
#ifndef _H_VIDEODEV_DUMPFILE_H_
#define _H_VIDEODEV_DUMPFILE_H_

#include <stdint.h>
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include <unistd.h>
#include <fcntl.h>
#include <errno.h>
#include <getopt.h>
#include <sys/ioctl.h>
#include <sys/time.h>
#include <sys/stat.h>
#include <sys/types.h>
#include <sys/time.h>
#include <sys/mman.h>
#ifndef BUILD_WINDOWS
#include <linux/videodev2.h>
#endif

#include <list>
#include <string>


#include "convert.h"
#include "gui.h"
#include "videodev.h"

class VideoDev_Dummy: public VideoDev {
private:
	ConvertData cdata;

	int Grab(VideoFrameRaw *vf);
	int Open();
	int Close();
	int CaptureStart();
	int CaptureStop();
	int SetDevCtrl(unsigned int id, int value);
	int GetDevCtrl(unsigned int id, int *value);
public:
	VideoDev_Dummy();
	~VideoDev_Dummy();
	int GetDeviceList(std::list<std::string> *list);
	int GetDeviceFormats(string device, std::list<string> *formats) { return VDEV_STATUS_OK; };
	int GetDeviceResolutions(string device, std::list<string> *formats) { return VDEV_STATUS_OK; };
};

#endif
