Shinya Kitaoka 810553
#pragma once
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
#ifndef __INFO_REGION_H__
Toshihiro Shimizu 890ddd
#define __INFO_REGION_H__
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
#define TNZ_TOPLEFT 1
Toshihiro Shimizu 890ddd
#define TNZ_TOPRIGHT 2
Toshihiro Shimizu 890ddd
#define TNZ_BOTRIGHT 3
Toshihiro Shimizu 890ddd
#define TNZ_BOTLEFT 4
Toshihiro Shimizu 890ddd
#define TNZ_LEFTOP 5
Toshihiro Shimizu 890ddd
#define TNZ_RIGHTOP 6
Toshihiro Shimizu 890ddd
#define TNZ_RIGHTBOT 7
Toshihiro Shimizu 890ddd
#define TNZ_LEFTBOT 8
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
typedef struct
Toshihiro Shimizu 890ddd
	{
Toshihiro Shimizu 890ddd
	int x1, y1, x2, y2;
Toshihiro Shimizu 890ddd
	int x_offset, y_offset;			/*  offset all'interno della regione   */
Toshihiro Shimizu 890ddd
	int xsize, ysize;				/*      dimensioni della regione       */
Toshihiro Shimizu 890ddd
	int scanNrow, scanNcol;			/* righe e col. dell'immagine da scan. */
Toshihiro Shimizu 890ddd
	int startScanRow, startScanCol; /*   offset nell'immagine da scandire  */
Toshihiro Shimizu 890ddd
	int step;						/*          fattore di scale           */
Toshihiro Shimizu 890ddd
	int lx_in, ly_in;				/*    dimensioni immag. da scandire    */
Toshihiro Shimizu 890ddd
} INFO_REGION;
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
typedef struct
Toshihiro Shimizu 890ddd
	{
Toshihiro Shimizu 890ddd
	int x1, y1, x2, y2;
Toshihiro Shimizu 890ddd
	int x_offset, y_offset;			/*  offset all'interno della regione   */
Toshihiro Shimizu 890ddd
	int xsize, ysize;				/*      dimensioni della regione       */
Toshihiro Shimizu 890ddd
	int scanNrow, scanNcol;			/* righe e col. dell'immagine da scan. */
Toshihiro Shimizu 890ddd
	int startScanRow, startScanCol; /*   offset nell'immagine da scandire  */
Toshihiro Shimizu 890ddd
	int step;						/*          fattore di scale           */
Toshihiro Shimizu 890ddd
	int lx_in, ly_in;				/*    dimensioni immag. da scandire    */
Toshihiro Shimizu 890ddd
	int verso_x, verso_y;			/* verso di scrittura nel buffer dest. */
Toshihiro Shimizu 890ddd
	int buf_inc;					/* incremento tra due pix. consecutivi */
Toshihiro Shimizu 890ddd
	int sxpix, expix, sypix, eypix; /* pixel estremi del buffer di input   */
Toshihiro Shimizu 890ddd
} EXT_INFO_REGION;
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
int get_info_region(EXT_INFO_REGION *region,
Toshihiro Shimizu 890ddd
					int x1_out, int y1_out, int x2_out, int y2_out, int scale,
Toshihiro Shimizu 890ddd
					int width_in, int height_in, int orientation);
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
void getInfoRegion(
Shinya Kitaoka 4c5bd5
	INFO_REGION *region,
Toshihiro Shimizu 890ddd
	int x1_out,
Toshihiro Shimizu 890ddd
	int y1_out,
Toshihiro Shimizu 890ddd
	int x2_out,
Toshihiro Shimizu 890ddd
	int y2_out,
Toshihiro Shimizu 890ddd
	int scale,
Toshihiro Shimizu 890ddd
	int width_in,
Toshihiro Shimizu 890ddd
	int height_in);
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
void print_info_region(EXT_INFO_REGION *region);
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
#endif /* __INFO_REGION_H__ */