//mtprequest.h
#include <string>
#include <fstream>
#include <memory>
#include <iostream>
using namespace std;
#include "ptp.h"
#include "ptpcam.h"
#define PTP_DP_NODATA 0x0000 /* no data phase */
#define PTP_DP_SENDDATA 0x0001 /* sending data */
#define PTP_DP_GETDATA 0x0002 /* receiving data */
#define True 1
#define False -1
extern "C" __declspec(dllexport) int __cdecl init_cam(unsigned short, unsigned short);
extern "C" __declspec(dllexport) void __cdecl free_cam();
extern "C" __declspec(dllexport) char* __cdecl send_msg(char*, int N = 10);
extern "C" __declspec(dllexport) int __cdecl open_session();
extern "C" __declspec(dllexport) int __cdecl close_session();
extern "C" __declspec(dllexport) void __cdecl set_buf_size(int);
extern "C" __declspec(dllexport) void __cdecl set_delay(int);
extern "C" __declspec(dllexport) int __cdecl check_usb_connection(int, int);
usb_dev_handle * get_usb_dev(unsigned short, unsigned short);
static struct usb_device * dev;
static usb_dev_handle * hDev;