# This file was automatically generated by SWIG (http://www.swig.org).
# Version 3.0.7
#
# 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):
        object.__setattr__(self, 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_nondynamic(self, class_type, name, static=1):
    if (name == "thisown"):
        return self.this.own()
    method = class_type.__swig_getmethods__.get(name, None)
    if method:
        return method(self)
    if (not static):
        return object.__getattr__(self, name)
    else:
        raise AttributeError(name)

def _swig_getattr(self, class_type, name):
    return _swig_getattr_nondynamic(self, class_type, name, 0)


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)


_filesys.GP_FILE_INFO_NONE_swigconstant(_filesys)
GP_FILE_INFO_NONE = _filesys.GP_FILE_INFO_NONE

_filesys.GP_FILE_INFO_TYPE_swigconstant(_filesys)
GP_FILE_INFO_TYPE = _filesys.GP_FILE_INFO_TYPE

_filesys.GP_FILE_INFO_NAME_swigconstant(_filesys)
GP_FILE_INFO_NAME = _filesys.GP_FILE_INFO_NAME

_filesys.GP_FILE_INFO_SIZE_swigconstant(_filesys)
GP_FILE_INFO_SIZE = _filesys.GP_FILE_INFO_SIZE

_filesys.GP_FILE_INFO_WIDTH_swigconstant(_filesys)
GP_FILE_INFO_WIDTH = _filesys.GP_FILE_INFO_WIDTH

_filesys.GP_FILE_INFO_HEIGHT_swigconstant(_filesys)
GP_FILE_INFO_HEIGHT = _filesys.GP_FILE_INFO_HEIGHT

_filesys.GP_FILE_INFO_PERMISSIONS_swigconstant(_filesys)
GP_FILE_INFO_PERMISSIONS = _filesys.GP_FILE_INFO_PERMISSIONS

_filesys.GP_FILE_INFO_STATUS_swigconstant(_filesys)
GP_FILE_INFO_STATUS = _filesys.GP_FILE_INFO_STATUS

_filesys.GP_FILE_INFO_MTIME_swigconstant(_filesys)
GP_FILE_INFO_MTIME = _filesys.GP_FILE_INFO_MTIME

_filesys.GP_FILE_INFO_ALL_swigconstant(_filesys)
GP_FILE_INFO_ALL = _filesys.GP_FILE_INFO_ALL

_filesys.GP_FILE_PERM_NONE_swigconstant(_filesys)
GP_FILE_PERM_NONE = _filesys.GP_FILE_PERM_NONE

_filesys.GP_FILE_PERM_READ_swigconstant(_filesys)
GP_FILE_PERM_READ = _filesys.GP_FILE_PERM_READ

_filesys.GP_FILE_PERM_DELETE_swigconstant(_filesys)
GP_FILE_PERM_DELETE = _filesys.GP_FILE_PERM_DELETE

_filesys.GP_FILE_PERM_ALL_swigconstant(_filesys)
GP_FILE_PERM_ALL = _filesys.GP_FILE_PERM_ALL

_filesys.GP_FILE_STATUS_NOT_DOWNLOADED_swigconstant(_filesys)
GP_FILE_STATUS_NOT_DOWNLOADED = _filesys.GP_FILE_STATUS_NOT_DOWNLOADED

_filesys.GP_FILE_STATUS_DOWNLOADED_swigconstant(_filesys)
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)


_filesys.GP_STORAGEINFO_BASE_swigconstant(_filesys)
GP_STORAGEINFO_BASE = _filesys.GP_STORAGEINFO_BASE

_filesys.GP_STORAGEINFO_LABEL_swigconstant(_filesys)
GP_STORAGEINFO_LABEL = _filesys.GP_STORAGEINFO_LABEL

_filesys.GP_STORAGEINFO_DESCRIPTION_swigconstant(_filesys)
GP_STORAGEINFO_DESCRIPTION = _filesys.GP_STORAGEINFO_DESCRIPTION

_filesys.GP_STORAGEINFO_ACCESS_swigconstant(_filesys)
GP_STORAGEINFO_ACCESS = _filesys.GP_STORAGEINFO_ACCESS

_filesys.GP_STORAGEINFO_STORAGETYPE_swigconstant(_filesys)
GP_STORAGEINFO_STORAGETYPE = _filesys.GP_STORAGEINFO_STORAGETYPE

_filesys.GP_STORAGEINFO_FILESYSTEMTYPE_swigconstant(_filesys)
GP_STORAGEINFO_FILESYSTEMTYPE = _filesys.GP_STORAGEINFO_FILESYSTEMTYPE

_filesys.GP_STORAGEINFO_MAXCAPACITY_swigconstant(_filesys)
GP_STORAGEINFO_MAXCAPACITY = _filesys.GP_STORAGEINFO_MAXCAPACITY

_filesys.GP_STORAGEINFO_FREESPACEKBYTES_swigconstant(_filesys)
GP_STORAGEINFO_FREESPACEKBYTES = _filesys.GP_STORAGEINFO_FREESPACEKBYTES

_filesys.GP_STORAGEINFO_FREESPACEIMAGES_swigconstant(_filesys)
GP_STORAGEINFO_FREESPACEIMAGES = _filesys.GP_STORAGEINFO_FREESPACEIMAGES

_filesys.GP_STORAGEINFO_ST_UNKNOWN_swigconstant(_filesys)
GP_STORAGEINFO_ST_UNKNOWN = _filesys.GP_STORAGEINFO_ST_UNKNOWN

_filesys.GP_STORAGEINFO_ST_FIXED_ROM_swigconstant(_filesys)
GP_STORAGEINFO_ST_FIXED_ROM = _filesys.GP_STORAGEINFO_ST_FIXED_ROM

_filesys.GP_STORAGEINFO_ST_REMOVABLE_ROM_swigconstant(_filesys)
GP_STORAGEINFO_ST_REMOVABLE_ROM = _filesys.GP_STORAGEINFO_ST_REMOVABLE_ROM

_filesys.GP_STORAGEINFO_ST_FIXED_RAM_swigconstant(_filesys)
GP_STORAGEINFO_ST_FIXED_RAM = _filesys.GP_STORAGEINFO_ST_FIXED_RAM

_filesys.GP_STORAGEINFO_ST_REMOVABLE_RAM_swigconstant(_filesys)
GP_STORAGEINFO_ST_REMOVABLE_RAM = _filesys.GP_STORAGEINFO_ST_REMOVABLE_RAM

_filesys.GP_STORAGEINFO_AC_READWRITE_swigconstant(_filesys)
GP_STORAGEINFO_AC_READWRITE = _filesys.GP_STORAGEINFO_AC_READWRITE

_filesys.GP_STORAGEINFO_AC_READONLY_swigconstant(_filesys)
GP_STORAGEINFO_AC_READONLY = _filesys.GP_STORAGEINFO_AC_READONLY

_filesys.GP_STORAGEINFO_AC_READONLY_WITH_DELETE_swigconstant(_filesys)
GP_STORAGEINFO_AC_READONLY_WITH_DELETE = _filesys.GP_STORAGEINFO_AC_READONLY_WITH_DELETE

_filesys.GP_STORAGEINFO_FST_UNDEFINED_swigconstant(_filesys)
GP_STORAGEINFO_FST_UNDEFINED = _filesys.GP_STORAGEINFO_FST_UNDEFINED

_filesys.GP_STORAGEINFO_FST_GENERICFLAT_swigconstant(_filesys)
GP_STORAGEINFO_FST_GENERICFLAT = _filesys.GP_STORAGEINFO_FST_GENERICFLAT

_filesys.GP_STORAGEINFO_FST_GENERICHIERARCHICAL_swigconstant(_filesys)
GP_STORAGEINFO_FST_GENERICHIERARCHICAL = _filesys.GP_STORAGEINFO_FST_GENERICHIERARCHICAL

_filesys.GP_STORAGEINFO_FST_DCF_swigconstant(_filesys)
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() -> "CameraFilesystem **":
    """
    gp_filesystem_new() -> int

    See also: gphoto2.CameraFilesystem
    """
    return _filesys.gp_filesystem_new()

def gp_filesystem_append(fs: '_CameraFilesystem', folder: 'char const *', filename: 'char const *', context: 'Context') -> "int":
    """
    gp_filesystem_append(fs, folder, filename, context) -> int

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

    """
    return _filesys.gp_filesystem_append(fs, folder, filename, context)

def gp_filesystem_set_info_noop(fs: '_CameraFilesystem', folder: 'char const *', info: 'CameraFileInfo', context: 'Context') -> "int":
    """
    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(fs, folder, info, context)

def gp_filesystem_set_file_noop(fs: '_CameraFilesystem', folder: 'char const *', file: 'CameraFile', context: 'Context') -> "int":
    """
    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(fs, folder, file, context)

def gp_filesystem_delete_file_noop(fs: '_CameraFilesystem', folder: 'char const *', filename: 'char const *', context: 'Context') -> "int":
    """
    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(fs, folder, filename, context)

def gp_filesystem_reset(fs: '_CameraFilesystem') -> "int":
    """
    gp_filesystem_reset(fs) -> int

    Parameters:
        fs: CameraFilesystem *

    """
    return _filesys.gp_filesystem_reset(fs)

def gp_filesystem_count(fs: '_CameraFilesystem', folder: 'char const *', context: 'Context') -> "int":
    """
    gp_filesystem_count(fs, folder, context) -> int

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

    """
    return _filesys.gp_filesystem_count(fs, folder, context)

def gp_filesystem_name(fs: '_CameraFilesystem', folder: 'char const *', filenumber: 'int', context: 'Context') -> "char **":
    """
    gp_filesystem_name(fs, folder, filenumber, context) -> int

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

    """
    return _filesys.gp_filesystem_name(fs, folder, filenumber, context)

def gp_filesystem_get_folder(fs: '_CameraFilesystem', filename: 'char const *', context: 'Context') -> "char **":
    """
    gp_filesystem_get_folder(fs, filename, context) -> int

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

    """
    return _filesys.gp_filesystem_get_folder(fs, filename, context)

def gp_filesystem_number(fs: '_CameraFilesystem', folder: 'char const *', filename: 'char const *', context: 'Context') -> "int":
    """
    gp_filesystem_number(fs, folder, filename, context) -> int

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

    """
    return _filesys.gp_filesystem_number(fs, folder, filename, context)

def gp_filesystem_set_list_funcs(fs: '_CameraFilesystem', file_list_func: 'CameraFilesystemListFunc', folder_list_func: 'CameraFilesystemListFunc', data: 'void *') -> "int":
    """
    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(fs, file_list_func, folder_list_func, data)

def gp_filesystem_list_files(fs: '_CameraFilesystem', folder: 'char const *', context: 'Context') -> "CameraList *":
    """
    gp_filesystem_list_files(fs, folder, context) -> int

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

    """
    return _filesys.gp_filesystem_list_files(fs, folder, context)

def gp_filesystem_list_folders(fs: '_CameraFilesystem', folder: 'char const *', context: 'Context') -> "CameraList *":
    """
    gp_filesystem_list_folders(fs, folder, context) -> int

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

    """
    return _filesys.gp_filesystem_list_folders(fs, folder, context)

def gp_filesystem_set_info_funcs(fs: '_CameraFilesystem', get_info_func: 'CameraFilesystemGetInfoFunc', set_info_func: 'CameraFilesystemSetInfoFunc', data: 'void *') -> "int":
    """
    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(fs, get_info_func, set_info_func, data)

def gp_filesystem_get_info(fs: '_CameraFilesystem', folder: 'char const *', filename: 'char const *', context: 'Context') -> "CameraFileInfo *":
    """
    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(fs, folder, filename, context)

def gp_filesystem_set_info(fs: '_CameraFilesystem', folder: 'char const *', filename: 'char const *', info: 'CameraFileInfo', context: 'Context') -> "int":
    """
    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(fs, folder, filename, info, context)

def gp_filesystem_set_file_funcs(fs: '_CameraFilesystem', get_file_func: 'CameraFilesystemGetFileFunc', del_file_func: 'CameraFilesystemDeleteFileFunc', data: 'void *') -> "int":
    """
    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(fs, get_file_func, del_file_func, data)

def gp_filesystem_get_file(fs: '_CameraFilesystem', folder: 'char const *', filename: 'char const *', type: 'CameraFileType', file: 'CameraFile', context: 'Context') -> "int":
    """
    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(fs, folder, filename, type, file, context)

def gp_filesystem_delete_file(fs: '_CameraFilesystem', folder: 'char const *', filename: 'char const *', context: 'Context') -> "int":
    """
    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(fs, folder, filename, context)

def gp_filesystem_set_folder_funcs(fs: '_CameraFilesystem', put_file_func: 'CameraFilesystemPutFileFunc', delete_all_func: 'CameraFilesystemDeleteAllFunc', make_dir_func: 'CameraFilesystemDirFunc', remove_dir_func: 'CameraFilesystemDirFunc', data: 'void *') -> "int":
    """
    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(fs, put_file_func, delete_all_func, make_dir_func, remove_dir_func, data)
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(fs: '_CameraFilesystem', funcs: '_CameraFilesystemFuncs', data: 'void *') -> "int":
    """
    gp_filesystem_set_funcs(fs, funcs, data) -> int

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

    """
    return _filesys.gp_filesystem_set_funcs(fs, funcs, data)

def gp_filesystem_put_file(fs: '_CameraFilesystem', folder: 'char const *', file: 'CameraFile', context: 'Context') -> "int":
    """
    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(fs, folder, file, context)

def gp_filesystem_delete_all(fs: '_CameraFilesystem', folder: 'char const *', context: 'Context') -> "int":
    """
    gp_filesystem_delete_all(fs, folder, context) -> int

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

    """
    return _filesys.gp_filesystem_delete_all(fs, folder, context)

def gp_filesystem_make_dir(fs: '_CameraFilesystem', folder: 'char const *', name: 'char const *', context: 'Context') -> "int":
    """
    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(fs, folder, name, context)

def gp_filesystem_remove_dir(fs: '_CameraFilesystem', folder: 'char const *', name: 'char const *', context: 'Context') -> "int":
    """
    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(fs, folder, name, context)

def gp_filesystem_dump(fs: '_CameraFilesystem') -> "int":
    """
    gp_filesystem_dump(fs) -> int

    Parameters:
        fs: CameraFilesystem *

    """
    return _filesys.gp_filesystem_dump(fs)


