Issue 165
[zxing.git] / cpp / core / src / GrayBytesMonochromeBitmapSource.h
1 #ifndef __GRAY_BYTES_MONOCHROM_BITMAP_SOURCE_H__
2 #define __GRAY_BYTES_MONOCHROM_BITMAP_SOURCE_H__
3
4 /*
5  *  GrayBytesMonochromeBitmapSource.h
6  *  ZXing
7  *
8  *  Created by Christian Brunschen on 03/06/2008.
9  *  Copyright 2008 ZXing authors All rights reserved.
10  *
11  */
12
13 #include "MonochromeBitmapSource.h"
14
15 class GrayBytesMonochromeBitmapSource : public MonochromeBitmapSource {
16 private:
17   size_t width_;
18   size_t height_;
19   const unsigned char *bytes_;
20   size_t bytesPerRow_;
21
22 protected:
23   virtual unsigned char getPixel(size_t x, size_t y);
24
25 public:
26   GrayBytesMonochromeBitmapSource(const unsigned char *bytes, 
27                                   size_t width, 
28                                   size_t height,
29                                   size_t bytesPerRow);
30   virtual ~GrayBytesMonochromeBitmapSource() { }
31   
32   virtual Ref<MonochromeBitmapSource> rotateCounterClockwise();
33   virtual bool isRotateSupported();
34   virtual size_t getWidth();
35   virtual size_t getHeight();
36   
37 };
38
39 #endif // __GRAY_BYTES_MONOCHROM_BITMAP_SOURCE_H__