/*	
 *	clipqr.h
 *
 *	QRコード
 *
 *	CLiP - Common Library for P/ECE
 *	Copyright (C) 2001-2015 Naoyuki Sawa
 *
 *	* Thu Sep 03 22:37:39 JST 2015 Naoyuki Sawa
 *	- 1st リリース。
 *	* Fri Sep 04 23:00:05 JST 2015 Naoyuki Sawa
 *	- QrDecode_1()を追加しました。
 *	* Sat Sep 05 21:31:55 JST 2015 Naoyuki Sawa
 *	- 'マスク処理結果の評価'処理を、簡易的な処理から、仕様に沿った処理に変更しました。
 *	* Sun Sep 20 18:19:03 JST 2015 Naoyuki Sawa
 *	- Qr_decode_jpeg()を追加しました。
 *	  QRコード画像デコードユーティリティは、アプリケーション寄りの実装例でもあります。
 *	* Wed Nov 18 21:37:53 JST 2015 Naoyuki Sawa
 *	- 'extern "C" {'〜'}'で囲みました。.cppを含むWin32プロジェクトからもインクルード出来るようにするためです。
 */
#ifndef __CLIP_QR_H__
#define __CLIP_QR_H__
#ifdef  __cplusplus
extern "C" {
#endif//__cplusplus
/****************************************************************************
 *	QRコードエンコーダー	1型
 ****************************************************************************/
void* QrEncode_1L_N(const char* data);		//1-L型 数字データ		最大41文字
void* QrEncode_1M_N(const char* data);		//1-M型 数字データ		最大34文字
void* QrEncode_1Q_N(const char* data);		//1-Q型 数字データ		最大27文字
void* QrEncode_1H_N(const char* data);		//1-H型 数字データ		最大17文字
/*--------------------------------------------------------------------------*/
void* QrEncode_1L_A(const char* data);		//1-L型 英数字データ		最大25文字
void* QrEncode_1M_A(const char* data);		//1-M型 英数字データ		最大20文字
void* QrEncode_1Q_A(const char* data);		//1-Q型 英数字データ		最大16文字
void* QrEncode_1H_A(const char* data);		//1-H型 英数字データ		最大10文字
/*--------------------------------------------------------------------------*/
void* QrEncode_1L_B(const void* data, int len);	//1-L型 8ビットバイトデータ	最大17バイト
void* QrEncode_1M_B(const void* data, int len);	//1-M型 8ビットバイトデータ	最大14バイト
void* QrEncode_1Q_B(const void* data, int len);	//1-Q型 8ビットバイトデータ	最大11バイト
void* QrEncode_1H_B(const void* data, int len);	//1-H型 8ビットバイトデータ	最大 7バイト
/*--------------------------------------------------------------------------*/
void* QrEncode_1L_K(const char* data);		//1-L型 漢字データ		未実装
void* QrEncode_1M_K(const char* data);		//1-M型 漢字データ		未実装
void* QrEncode_1Q_K(const char* data);		//1-Q型 漢字データ		未実装
void* QrEncode_1H_K(const char* data);		//1-H型 漢字データ		未実装
/****************************************************************************
 *	QRコードデコーダー
 ****************************************************************************/
int QrDecode_1(const void* _sym, void* data/*[41+1],NULL可*/);	//1型
/****************************************************************************
 *	QRコード画像デコードユーティリティ
 ****************************************************************************/
char* Qr_decode_jpeg(const void* jpeg);
#ifdef  __cplusplus
}//extern "C"
#endif//__cplusplus
#endif//__CLIP_QR_H__
