#ifndef wrap_camera_h
#define wrap_camera_h

#include <QStringList>
#include <QString>
#include "wrap-gphoto.h"

// C++ wrapper for the gphoto2 camera type.
// Limited to just the features I happen to need, but could be expanded.
//
class WrapCamera {
public:

   WrapCamera(WrapGphoto2 * init_wgp, Camera * init_camera);

   ~WrapCamera();

      // dirname is name of directory on the camera, returned list
      // is the names of files in that directory.
      //
   QStringList
   FilesInDirectory(QString dirname);

      // Fetch the file named srcfile in the camera to the file
      // named destfile on the local system.
      //
   bool
   FetchFile(QString srcdir, QString srcfile, QString destdir, QString destfile);

      // Delete the file named srcfile from the camera.
      //
   bool
   DeleteFile(QString srcdir, QString srcfile);

private:

   WrapGphoto2 * wgp;
   Camera * camera;
};

#endif // wrap_camera_h
