//---------------------------------------------------------
// 概要      : カメラからの入力画像をそのまま表示
// File Name : image.c
// Library   : OpenCV for MS-Windows 1.0
//---------------------------------------------------------

#include <stdio.h>
#include <highgui.h>

int main( int argc, char** argv ){ 
	int key;								//	キー入力用の変数
	CvCapture *capture;						//	カメラキャプチャ用の構造体
	IplImage *frameImage;					//	キャプチャ画像用IplImage
	char windowNameCapture[] = "Capture";	//	キャプチャした画像を表示するウィンドウの名前

	//	カメラを初期化する
	if ( ( capture = cvCreateCameraCapture( -1 ) ) == NULL ) {
		//	カメラが見つからなかった場合
		printf( "カメラが見つかりません\n" );
		return -1;
	}

	//	ウィンドウを生成する
    cvNamedWindow( windowNameCapture, CV_WINDOW_AUTOSIZE );

	//	メインループ
	while ( 1 ) {
		//	カメラからの入力画像1フレームをframeImageに格納する
		frameImage = cvQueryFrame( capture );

		//	画像を表示する
		cvShowImage( windowNameCapture, frameImage );
		
		//	'q'キーが入力されたらループを抜ける
		key = cvWaitKey( 1 );
		if ( key == 'q' ) {
			break;
		}
	}

	//	キャプチャを解放する
	cvReleaseCapture( &capture );
	//	ウィンドウを破棄する
	cvDestroyWindow( windowNameCapture );

	return 0;
}