reference/ocr-simple/bitmap.h
author viric@llimona
Thu, 18 May 2006 23:12:51 +0200
changeset 0 6b8091ca909a
permissions -rw-r--r--
Init from working directory of svn repository.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
0
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
     1
#ifndef BITMAP
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
     2
#define BITMAP 1
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
     3
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
     4
class Bitmap
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
     5
{
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
     6
 private:
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
     7
  char* bits;
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
     8
  int height;
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
     9
  int width;
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    10
 public:
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    11
  Bitmap(char* b, int h, int w);
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    12
  Bitmap(char* filename);
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    13
  void WriteToFile(char* filename);
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    14
  inline int Height() 
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    15
      {
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    16
	return height;
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    17
      }
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    18
  inline int Width()
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    19
      {
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    20
	return width;
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    21
      }
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    22
  inline int PixelAt(int x, int y)
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    23
      {
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    24
	int offset = (y * (width / 8)) + (x / 8);
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    25
	char mask = (char) (1 << (x % 8));
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    26
	return (bits[offset] & mask);
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    27
      }
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    28
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    29
};
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    30
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    31
#endif
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    32
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    33
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    34