# This file was automatically generated by SWIG (http://www.swig.org).
# Version 3.0.2
#
# Do not make changes to this file unless you know what you are doing--modify
# the SWIG interface file instead.





from sys import version_info
if version_info >= (3,0,0):
    new_instancemethod = lambda func, inst, cls: _filesys.SWIG_PyInstanceMethod_New(func)
else:
    from new import instancemethod as new_instancemethod
if version_info >= (2,6,0):
    def swig_import_helper():
        from os.path import dirname
        import imp
        fp = None
        try:
            fp, pathname, description = imp.find_module('_filesys', [dirname(__file__)])
        except ImportError:
            import _filesys
            return _filesys
        if fp is not None:
            try:
                _mod = imp.load_module('_filesys', fp, pathname, description)
            finally:
                fp.close()
            return _mod
    _filesys = swig_import_helper()
    del swig_import_helper
else:
    import _filesys
del version_info
try:
    _swig_property = property
except NameError:
    pass # Python < 2.2 doesn't have 'property'.
def _swig_setattr_nondynamic(self,class_type,name,value,static=1):
    if (name == "thisown"): return self.this.own(value)
    if (name == "this"):
        if type(value).__name__ == 'SwigPyObject':
            self.__dict__[name] = value
            return
    method = class_type.__swig_setmethods__.get(name,None)
    if method: return method(self,value)
    if (not static):
        self.__dict__[name] = value
    else:
        raise AttributeError("You cannot add attributes to %s" % self)

def _swig_setattr(self,class_type,name,value):
    return _swig_setattr_nondynamic(self,class_type,name,value,0)

def _swig_getattr(self,class_type,name):
    if (name == "thisown"): return self.this.own()
    method = class_type.__swig_getmethods__.get(name,None)
    if method: return method(self)
    raise AttributeError(name)

def _swig_repr(self):
    try: strthis = "proxy of " + self.this.__repr__()
    except: strthis = ""
    return "<%s.%s; %s >" % (self.__class__.__module__, self.__class__.__name__, strthis,)

try:
    _object = object
    _newclass = 1
except AttributeError:
    class _object : pass
    _newclass = 0


def _swig_setattr_nondynamic_method(set):
    def set_attr(self,name,value):
        if (name == "thisown"): return self.this.own(value)
        if hasattr(self,name) or (name == "this"):
            set(self,name,value)
        else:
            raise AttributeError("You cannot add attributes to %s" % self)
    return set_attr


import gphoto2.context
import gphoto2.list
import gphoto2.file
class _CameraFilesystem(object):
    """Proxy of C _CameraFilesystem struct"""
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self): 
        """__init__(self) -> _CameraFilesystem"""
        _filesys._CameraFilesystem_swiginit(self,_filesys.new__CameraFilesystem())
    __swig_destroy__ = _filesys.delete__CameraFilesystem
_CameraFilesystem_swigregister = _filesys._CameraFilesystem_swigregister
_CameraFilesystem_swigregister(_CameraFilesystem)

GP_FILE_INFO_NONE = _filesys.GP_FILE_INFO_NONE
GP_FILE_INFO_TYPE = _filesys.GP_FILE_INFO_TYPE
GP_FILE_INFO_NAME = _filesys.GP_FILE_INFO_NAME
GP_FILE_INFO_SIZE = _filesys.GP_FILE_INFO_SIZE
GP_FILE_INFO_WIDTH = _filesys.GP_FILE_INFO_WIDTH
GP_FILE_INFO_HEIGHT = _filesys.GP_FILE_INFO_HEIGHT
GP_FILE_INFO_PERMISSIONS = _filesys.GP_FILE_INFO_PERMISSIONS
GP_FILE_INFO_STATUS = _filesys.GP_FILE_INFO_STATUS
GP_FILE_INFO_MTIME = _filesys.GP_FILE_INFO_MTIME
GP_FILE_INFO_ALL = _filesys.GP_FILE_INFO_ALL
GP_FILE_PERM_NONE = _filesys.GP_FILE_PERM_NONE
GP_FILE_PERM_READ = _filesys.GP_FILE_PERM_READ
GP_FILE_PERM_DELETE = _filesys.GP_FILE_PERM_DELETE
GP_FILE_PERM_ALL = _filesys.GP_FILE_PERM_ALL
GP_FILE_STATUS_NOT_DOWNLOADED = _filesys.GP_FILE_STATUS_NOT_DOWNLOADED
GP_FILE_STATUS_DOWNLOADED = _filesys.GP_FILE_STATUS_DOWNLOADED
class CameraFileInfoFile(object):
    """Proxy of C _CameraFileInfoFile struct"""
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    def __init__(self, *args, **kwargs): raise AttributeError("No constructor defined")
    __repr__ = _swig_repr
    fields = _swig_property(_filesys.CameraFileInfoFile_fields_get)
    status = _swig_property(_filesys.CameraFileInfoFile_status_get)
    size = _swig_property(_filesys.CameraFileInfoFile_size_get)
    type = _swig_property(_filesys.CameraFileInfoFile_type_get)
    width = _swig_property(_filesys.CameraFileInfoFile_width_get)
    height = _swig_property(_filesys.CameraFileInfoFile_height_get)
    name = _swig_property(_filesys.CameraFileInfoFile_name_get)
    permissions = _swig_property(_filesys.CameraFileInfoFile_permissions_get)
    mtime = _swig_property(_filesys.CameraFileInfoFile_mtime_get)
    __swig_destroy__ = _filesys.delete_CameraFileInfoFile
CameraFileInfoFile_swigregister = _filesys.CameraFileInfoFile_swigregister
CameraFileInfoFile_swigregister(CameraFileInfoFile)

class CameraFileInfoPreview(object):
    """Proxy of C _CameraFileInfoPreview struct"""
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    def __init__(self, *args, **kwargs): raise AttributeError("No constructor defined")
    __repr__ = _swig_repr
    fields = _swig_property(_filesys.CameraFileInfoPreview_fields_get)
    status = _swig_property(_filesys.CameraFileInfoPreview_status_get)
    size = _swig_property(_filesys.CameraFileInfoPreview_size_get)
    type = _swig_property(_filesys.CameraFileInfoPreview_type_get)
    width = _swig_property(_filesys.CameraFileInfoPreview_width_get)
    height = _swig_property(_filesys.CameraFileInfoPreview_height_get)
    __swig_destroy__ = _filesys.delete_CameraFileInfoPreview
CameraFileInfoPreview_swigregister = _filesys.CameraFileInfoPreview_swigregister
CameraFileInfoPreview_swigregister(CameraFileInfoPreview)

class CameraFileInfoAudio(object):
    """Proxy of C _CameraFileInfoAudio struct"""
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    def __init__(self, *args, **kwargs): raise AttributeError("No constructor defined")
    __repr__ = _swig_repr
    fields = _swig_property(_filesys.CameraFileInfoAudio_fields_get)
    status = _swig_property(_filesys.CameraFileInfoAudio_status_get)
    size = _swig_property(_filesys.CameraFileInfoAudio_size_get)
    type = _swig_property(_filesys.CameraFileInfoAudio_type_get)
    __swig_destroy__ = _filesys.delete_CameraFileInfoAudio
CameraFileInfoAudio_swigregister = _filesys.CameraFileInfoAudio_swigregister
CameraFileInfoAudio_swigregister(CameraFileInfoAudio)

class CameraFileInfo(object):
    """Proxy of C _CameraFileInfo struct"""
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    def __init__(self, *args, **kwargs): raise AttributeError("No constructor defined")
    __repr__ = _swig_repr
    preview = _swig_property(_filesys.CameraFileInfo_preview_get)
    file = _swig_property(_filesys.CameraFileInfo_file_get)
    audio = _swig_property(_filesys.CameraFileInfo_audio_get)
    __swig_destroy__ = _filesys.delete_CameraFileInfo
CameraFileInfo_swigregister = _filesys.CameraFileInfo_swigregister
CameraFileInfo_swigregister(CameraFileInfo)

GP_STORAGEINFO_BASE = _filesys.GP_STORAGEINFO_BASE
GP_STORAGEINFO_LABEL = _filesys.GP_STORAGEINFO_LABEL
GP_STORAGEINFO_DESCRIPTION = _filesys.GP_STORAGEINFO_DESCRIPTION
GP_STORAGEINFO_ACCESS = _filesys.GP_STORAGEINFO_ACCESS
GP_STORAGEINFO_STORAGETYPE = _filesys.GP_STORAGEINFO_STORAGETYPE
GP_STORAGEINFO_FILESYSTEMTYPE = _filesys.GP_STORAGEINFO_FILESYSTEMTYPE
GP_STORAGEINFO_MAXCAPACITY = _filesys.GP_STORAGEINFO_MAXCAPACITY
GP_STORAGEINFO_FREESPACEKBYTES = _filesys.GP_STORAGEINFO_FREESPACEKBYTES
GP_STORAGEINFO_FREESPACEIMAGES = _filesys.GP_STORAGEINFO_FREESPACEIMAGES
GP_STORAGEINFO_ST_UNKNOWN = _filesys.GP_STORAGEINFO_ST_UNKNOWN
GP_STORAGEINFO_ST_FIXED_ROM = _filesys.GP_STORAGEINFO_ST_FIXED_ROM
GP_STORAGEINFO_ST_REMOVABLE_ROM = _filesys.GP_STORAGEINFO_ST_REMOVABLE_ROM
GP_STORAGEINFO_ST_FIXED_RAM = _filesys.GP_STORAGEINFO_ST_FIXED_RAM
GP_STORAGEINFO_ST_REMOVABLE_RAM = _filesys.GP_STORAGEINFO_ST_REMOVABLE_RAM
GP_STORAGEINFO_AC_READWRITE = _filesys.GP_STORAGEINFO_AC_READWRITE
GP_STORAGEINFO_AC_READONLY = _filesys.GP_STORAGEINFO_AC_READONLY
GP_STORAGEINFO_AC_READONLY_WITH_DELETE = _filesys.GP_STORAGEINFO_AC_READONLY_WITH_DELETE
GP_STORAGEINFO_FST_UNDEFINED = _filesys.GP_STORAGEINFO_FST_UNDEFINED
GP_STORAGEINFO_FST_GENERICFLAT = _filesys.GP_STORAGEINFO_FST_GENERICFLAT
GP_STORAGEINFO_FST_GENERICHIERARCHICAL = _filesys.GP_STORAGEINFO_FST_GENERICHIERARCHICAL
GP_STORAGEINFO_FST_DCF = _filesys.GP_STORAGEINFO_FST_DCF
class CameraStorageInformation(object):
    """Proxy of C _CameraStorageInformation struct"""
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    def __init__(self, *args, **kwargs): raise AttributeError("No constructor defined")
    __repr__ = _swig_repr
    fields = _swig_property(_filesys.CameraStorageInformation_fields_get)
    basedir = _swig_property(_filesys.CameraStorageInformation_basedir_get)
    label = _swig_property(_filesys.CameraStorageInformation_label_get)
    description = _swig_property(_filesys.CameraStorageInformation_description_get)
    type = _swig_property(_filesys.CameraStorageInformation_type_get)
    fstype = _swig_property(_filesys.CameraStorageInformation_fstype_get)
    access = _swig_property(_filesys.CameraStorageInformation_access_get)
    capacitykbytes = _swig_property(_filesys.CameraStorageInformation_capacitykbytes_get)
    freekbytes = _swig_property(_filesys.CameraStorageInformation_freekbytes_get)
    freeimages = _swig_property(_filesys.CameraStorageInformation_freeimages_get)
    __swig_destroy__ = _filesys.delete_CameraStorageInformation
CameraStorageInformation_swigregister = _filesys.CameraStorageInformation_swigregister
CameraStorageInformation_swigregister(CameraStorageInformation)


def gp_filesystem_new():
  """gp_filesystem_new() -> int"""
  return _filesys.gp_filesystem_new()

def gp_filesystem_append(*args):
  """
    gp_filesystem_append(fs, folder, filename, context) -> int

    Parameters:
        fs: CameraFilesystem *
        folder: char const *
        filename: char const *
        context: Context *

    """
  return _filesys.gp_filesystem_append(*args)

def gp_filesystem_set_info_noop(*args):
  """
    gp_filesystem_set_info_noop(fs, folder, info, context) -> int

    Parameters:
        fs: CameraFilesystem *
        folder: char const *
        info: CameraFileInfo
        context: Context *

    """
  return _filesys.gp_filesystem_set_info_noop(*args)

def gp_filesystem_set_file_noop(*args):
  """
    gp_filesystem_set_file_noop(fs, folder, file, context) -> int

    Parameters:
        fs: CameraFilesystem *
        folder: char const *
        file: CameraFile *
        context: Context *

    """
  return _filesys.gp_filesystem_set_file_noop(*args)

def gp_filesystem_delete_file_noop(*args):
  """
    gp_filesystem_delete_file_noop(fs, folder, filename, context) -> int

    Parameters:
        fs: CameraFilesystem *
        folder: char const *
        filename: char const *
        context: Context *

    """
  return _filesys.gp_filesystem_delete_file_noop(*args)

def gp_filesystem_reset(*args):
  """
    gp_filesystem_reset(fs) -> int

    Parameters:
        fs: CameraFilesystem *

    """
  return _filesys.gp_filesystem_reset(*args)

def gp_filesystem_count(*args):
  """
    gp_filesystem_count(fs, folder, context) -> int

    Parameters:
        fs: CameraFilesystem *
        folder: char const *
        context: Context *

    """
  return _filesys.gp_filesystem_count(*args)

def gp_filesystem_name(*args):
  """
    gp_filesystem_name(fs, folder, filenumber, context) -> int

    Parameters:
        fs: CameraFilesystem *
        folder: char const *
        filenumber: int
        context: Context *

    """
  return _filesys.gp_filesystem_name(*args)

def gp_filesystem_get_folder(*args):
  """
    gp_filesystem_get_folder(fs, filename, context) -> int

    Parameters:
        fs: CameraFilesystem *
        filename: char const *
        context: Context *

    """
  return _filesys.gp_filesystem_get_folder(*args)

def gp_filesystem_number(*args):
  """
    gp_filesystem_number(fs, folder, filename, context) -> int

    Parameters:
        fs: CameraFilesystem *
        folder: char const *
        filename: char const *
        context: Context *

    """
  return _filesys.gp_filesystem_number(*args)

def gp_filesystem_set_list_funcs(*args):
  """
    gp_filesystem_set_list_funcs(fs, file_list_func, folder_list_func, data) -> int

    Parameters:
        fs: CameraFilesystem *
        file_list_func: CameraFilesystemListFunc
        folder_list_func: CameraFilesystemListFunc
        data: void *

    """
  return _filesys.gp_filesystem_set_list_funcs(*args)

def gp_filesystem_list_files(*args):
  """
    gp_filesystem_list_files(fs, folder, context) -> int

    Parameters:
        fs: CameraFilesystem *
        folder: char const *
        context: Context *

    """
  return _filesys.gp_filesystem_list_files(*args)

def gp_filesystem_list_folders(*args):
  """
    gp_filesystem_list_folders(fs, folder, context) -> int

    Parameters:
        fs: CameraFilesystem *
        folder: char const *
        context: Context *

    """
  return _filesys.gp_filesystem_list_folders(*args)

def gp_filesystem_set_info_funcs(*args):
  """
    gp_filesystem_set_info_funcs(fs, get_info_func, set_info_func, data) -> int

    Parameters:
        fs: CameraFilesystem *
        get_info_func: CameraFilesystemGetInfoFunc
        set_info_func: CameraFilesystemSetInfoFunc
        data: void *

    """
  return _filesys.gp_filesystem_set_info_funcs(*args)

def gp_filesystem_get_info(*args):
  """
    gp_filesystem_get_info(fs, folder, filename, context) -> int

    Parameters:
        fs: CameraFilesystem *
        folder: char const *
        filename: char const *
        context: Context *

    """
  return _filesys.gp_filesystem_get_info(*args)

def gp_filesystem_set_info(*args):
  """
    gp_filesystem_set_info(fs, folder, filename, info, context) -> int

    Parameters:
        fs: CameraFilesystem *
        folder: char const *
        filename: char const *
        info: CameraFileInfo
        context: Context *

    """
  return _filesys.gp_filesystem_set_info(*args)

def gp_filesystem_set_file_funcs(*args):
  """
    gp_filesystem_set_file_funcs(fs, get_file_func, del_file_func, data) -> int

    Parameters:
        fs: CameraFilesystem *
        get_file_func: CameraFilesystemGetFileFunc
        del_file_func: CameraFilesystemDeleteFileFunc
        data: void *

    """
  return _filesys.gp_filesystem_set_file_funcs(*args)

def gp_filesystem_get_file(*args):
  """
    gp_filesystem_get_file(fs, folder, filename, type, file, context) -> int

    Parameters:
        fs: CameraFilesystem *
        folder: char const *
        filename: char const *
        type: enum CameraFileType
        file: CameraFile *
        context: Context *

    """
  return _filesys.gp_filesystem_get_file(*args)

def gp_filesystem_delete_file(*args):
  """
    gp_filesystem_delete_file(fs, folder, filename, context) -> int

    Parameters:
        fs: CameraFilesystem *
        folder: char const *
        filename: char const *
        context: Context *

    """
  return _filesys.gp_filesystem_delete_file(*args)

def gp_filesystem_set_folder_funcs(*args):
  """
    gp_filesystem_set_folder_funcs(fs, put_file_func, delete_all_func, make_dir_func, remove_dir_func, data) -> int

    Parameters:
        fs: CameraFilesystem *
        put_file_func: CameraFilesystemPutFileFunc
        delete_all_func: CameraFilesystemDeleteAllFunc
        make_dir_func: CameraFilesystemDirFunc
        remove_dir_func: CameraFilesystemDirFunc
        data: void *

    """
  return _filesys.gp_filesystem_set_folder_funcs(*args)
class _CameraFilesystemFuncs(object):
    """Proxy of C _CameraFilesystemFuncs struct"""
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    def __init__(self, *args, **kwargs): raise AttributeError("No constructor defined")
    __repr__ = _swig_repr
    file_list_func = _swig_property(_filesys._CameraFilesystemFuncs_file_list_func_get)
    folder_list_func = _swig_property(_filesys._CameraFilesystemFuncs_folder_list_func_get)
    put_file_func = _swig_property(_filesys._CameraFilesystemFuncs_put_file_func_get)
    delete_all_func = _swig_property(_filesys._CameraFilesystemFuncs_delete_all_func_get)
    get_info_func = _swig_property(_filesys._CameraFilesystemFuncs_get_info_func_get)
    set_info_func = _swig_property(_filesys._CameraFilesystemFuncs_set_info_func_get)
    make_dir_func = _swig_property(_filesys._CameraFilesystemFuncs_make_dir_func_get)
    remove_dir_func = _swig_property(_filesys._CameraFilesystemFuncs_remove_dir_func_get)
    get_file_func = _swig_property(_filesys._CameraFilesystemFuncs_get_file_func_get)
    del_file_func = _swig_property(_filesys._CameraFilesystemFuncs_del_file_func_get)
    storage_info_func = _swig_property(_filesys._CameraFilesystemFuncs_storage_info_func_get)
    unused = _swig_property(_filesys._CameraFilesystemFuncs_unused_get)
    __swig_destroy__ = _filesys.delete__CameraFilesystemFuncs
_CameraFilesystemFuncs_swigregister = _filesys._CameraFilesystemFuncs_swigregister
_CameraFilesystemFuncs_swigregister(_CameraFilesystemFuncs)


def gp_filesystem_set_funcs(*args):
  """
    gp_filesystem_set_funcs(fs, funcs, data) -> int

    Parameters:
        fs: CameraFilesystem *
        funcs: CameraFilesystemFuncs *
        data: void *

    """
  return _filesys.gp_filesystem_set_funcs(*args)

def gp_filesystem_put_file(*args):
  """
    gp_filesystem_put_file(fs, folder, file, context) -> int

    Parameters:
        fs: CameraFilesystem *
        folder: char const *
        file: CameraFile *
        context: Context *

    """
  return _filesys.gp_filesystem_put_file(*args)

def gp_filesystem_delete_all(*args):
  """
    gp_filesystem_delete_all(fs, folder, context) -> int

    Parameters:
        fs: CameraFilesystem *
        folder: char const *
        context: Context *

    """
  return _filesys.gp_filesystem_delete_all(*args)

def gp_filesystem_make_dir(*args):
  """
    gp_filesystem_make_dir(fs, folder, name, context) -> int

    Parameters:
        fs: CameraFilesystem *
        folder: char const *
        name: char const *
        context: Context *

    """
  return _filesys.gp_filesystem_make_dir(*args)

def gp_filesystem_remove_dir(*args):
  """
    gp_filesystem_remove_dir(fs, folder, name, context) -> int

    Parameters:
        fs: CameraFilesystem *
        folder: char const *
        name: char const *
        context: Context *

    """
  return _filesys.gp_filesystem_remove_dir(*args)

def gp_filesystem_dump(*args):
  """
    gp_filesystem_dump(fs) -> int

    Parameters:
        fs: CameraFilesystem *

    """
  return _filesys.gp_filesystem_dump(*args)


