// Listing 9.1. Utworzenie okna i wyświetlenie w nim obrazu
//
#include <opencv2/opencv.hpp>
#include <iostream>

using namespace std;


void help(char** argv ) {
	cout << "\n"
		<< "Utworzenie okna i wyświetlenie w nim obrazu\nWywołanie:\n"
		<< argv[0] <<" obraz\n"
		<< endl;
}

int main(int argc, char** argv) {
	// dokumentacja interfejsu
	help(argv);
	if(argc != 2) { cout << "Należy podać ścieżkę do obrazu/nazwę" << endl;; exit(0);}

	// utworzenie okna z nazwą taką samą jak nazwa pliku
  //
  cv::namedWindow( argv[1], 1 );

  // załadowanie danego obrazu
  //
  cv::Mat img = cv::imread( argv[1] );

  // wyświetlenie obrazu w nazwanym oknie
  //
  cv::imshow( argv[1], img );

  // uśpienie, aż użytkownik naciśnie klawisz Esc
  //
  cv::waitKey(); // dowolny klawisz zamyka program

  // posprzątanie po sobie tego, co się naświniło
  //
  cv::destroyWindow( argv[1] );
  exit(0);
}
