diff --git a/bindings/python/README b/bindings/python/README deleted file mode 100644 index 9a79b01..0000000 --- a/bindings/python/README +++ /dev/null @@ -1,17 +0,0 @@ -libisofs python bindings -======================== - -The Python bindings are layered on two levels. The low-level 1:1 mapping of -the C API is done through ctypes. The higher level bindings build a -pythonic API on that mapping. - -The low-level API is in isofs.core. That file is autogenerated using -pyglet's ctypes code generator, which can be found at: - -http://pyglet.googlecode.com/svn/trunk/tools/wraptypes/ - -Note that this is not a permanent solution. Right now the generated code -is committed to the repository, to facilitate development. In the longer -term, the wraptypes tool should be added to the libburnia repository and -the core binding generated by the build system. - diff --git a/bindings/python/isofs/__init__.py b/bindings/python/isofs/__init__.py deleted file mode 100644 index 6e296da..0000000 --- a/bindings/python/isofs/__init__.py +++ /dev/null @@ -1,2 +0,0 @@ -from defines import * -from isofs import IsoFS diff --git a/bindings/python/isofs/core.py b/bindings/python/isofs/core.py deleted file mode 100644 index b2d5c61..0000000 --- a/bindings/python/isofs/core.py +++ /dev/null @@ -1,185 +0,0 @@ -'''Wrapper for isofs - -Generated with: -../wraptypes/wrap.py -ocore.py -lisofs ../../../libisofs/libisofs.h - -Do not modify this file. -''' - -__docformat__ = 'restructuredtext' -__version__ = '$Id: wrap.py 738 2007-03-12 04:53:42Z Alex.Holkner $' - -import ctypes -from ctypes import * -from ctypes.util import find_library as _find_library - -#_libpath = _find_library('isofs') -#if not _libpath: -# raise ImportError('Could not locate isofs library') - -# If you are a developer, comment the above three lines and uncomment -# the following line, to hardcode the library path. -_libpath = 'libisofs.so' - -_lib = cdll.LoadLibrary(_libpath) - -_int_types = (c_int16, c_int32) -if hasattr(ctypes, 'c_int64'): - # Some builds of ctypes apparently do not have c_int64 - # defined; it's a pretty good bet that these builds do not - # have 64-bit pointers. - _int_types += (ctypes.c_int64,) -for t in _int_types: - if sizeof(t) == sizeof(c_size_t): - c_ptrdiff_t = t - -class c_void(Structure): - # c_void_p is a buggy return type, converting to int, so - # POINTER(None) == c_void_p is actually written as - # POINTER(c_void), so it can be treated as a real pointer. - _fields_ = [('dummy', c_int)] - - - -class struct_iso_volume(Structure): - __slots__ = [ - ] -struct_iso_volume._fields_ = [ - ('_opaque_struct', c_int) -] - -class struct_iso_tree_node(Structure): - __slots__ = [ - ] -struct_iso_tree_node._fields_ = [ - ('_opaque_struct', c_int) -] - -class struct_iso_volset(Structure): - __slots__ = [ - ] -struct_iso_volset._fields_ = [ - ('_opaque_struct', c_int) -] - -class struct_burn_source(Structure): - __slots__ = [ - ] -struct_burn_source._fields_ = [ - ('_opaque_struct', c_int) -] - -# ../../../libisofs/libisofs.h:45 -iso_volume_new = _lib.iso_volume_new -iso_volume_new.restype = POINTER(struct_iso_volume) -iso_volume_new.argtypes = [c_char_p, c_char_p, c_char_p] - -# ../../../libisofs/libisofs.h:49 -iso_volume_new_with_root = _lib.iso_volume_new_with_root -iso_volume_new_with_root.restype = POINTER(struct_iso_volume) -iso_volume_new_with_root.argtypes = [c_char_p, c_char_p, c_char_p, POINTER(struct_iso_tree_node)] - -# ../../../libisofs/libisofs.h:57 -iso_volume_free = _lib.iso_volume_free -iso_volume_free.restype = None -iso_volume_free.argtypes = [POINTER(struct_iso_volume)] - -# ../../../libisofs/libisofs.h:62 -iso_volset_free = _lib.iso_volset_free -iso_volset_free.restype = None -iso_volset_free.argtypes = [POINTER(struct_iso_volset)] - -# ../../../libisofs/libisofs.h:67 -iso_volume_get_root = _lib.iso_volume_get_root -iso_volume_get_root.restype = POINTER(struct_iso_tree_node) -iso_volume_get_root.argtypes = [POINTER(struct_iso_volume)] - -# ../../../libisofs/libisofs.h:72 -iso_volume_set_volume_id = _lib.iso_volume_set_volume_id -iso_volume_set_volume_id.restype = None -iso_volume_set_volume_id.argtypes = [POINTER(struct_iso_volume), c_char_p] - -# ../../../libisofs/libisofs.h:78 -iso_volume_set_publisher_id = _lib.iso_volume_set_publisher_id -iso_volume_set_publisher_id.restype = None -iso_volume_set_publisher_id.argtypes = [POINTER(struct_iso_volume), c_char_p] - -# ../../../libisofs/libisofs.h:84 -iso_volume_set_data_preparer_id = _lib.iso_volume_set_data_preparer_id -iso_volume_set_data_preparer_id.restype = None -iso_volume_set_data_preparer_id.argtypes = [POINTER(struct_iso_volume), c_char_p] - -# ../../../libisofs/libisofs.h:96 -iso_tree_volume_path_to_node = _lib.iso_tree_volume_path_to_node -iso_tree_volume_path_to_node.restype = POINTER(struct_iso_tree_node) -iso_tree_volume_path_to_node.argtypes = [POINTER(struct_iso_volume), c_char_p] - -# ../../../libisofs/libisofs.h:107 -iso_tree_volume_add_path = _lib.iso_tree_volume_add_path -iso_tree_volume_add_path.restype = POINTER(struct_iso_tree_node) -iso_tree_volume_add_path.argtypes = [POINTER(struct_iso_volume), c_char_p, c_char_p] - -# ../../../libisofs/libisofs.h:119 -iso_tree_volume_add_new_dir = _lib.iso_tree_volume_add_new_dir -iso_tree_volume_add_new_dir.restype = POINTER(struct_iso_tree_node) -iso_tree_volume_add_new_dir.argtypes = [POINTER(struct_iso_volume), c_char_p] - -# ../../../libisofs/libisofs.h:128 -iso_volset_new = _lib.iso_volset_new -iso_volset_new.restype = POINTER(struct_iso_volset) -iso_volset_new.argtypes = [POINTER(struct_iso_volume), c_char_p] - -# ../../../libisofs/libisofs.h:141 -iso_tree_add_node = _lib.iso_tree_add_node -iso_tree_add_node.restype = POINTER(struct_iso_tree_node) -iso_tree_add_node.argtypes = [POINTER(struct_iso_tree_node), c_char_p] - -# ../../../libisofs/libisofs.h:157 -iso_tree_radd_dir = _lib.iso_tree_radd_dir -iso_tree_radd_dir.restype = POINTER(struct_iso_tree_node) -iso_tree_radd_dir.argtypes = [POINTER(struct_iso_tree_node), c_char_p] - -# ../../../libisofs/libisofs.h:166 -iso_exclude_add_path = _lib.iso_exclude_add_path -iso_exclude_add_path.restype = None -iso_exclude_add_path.argtypes = [c_char_p] - -# ../../../libisofs/libisofs.h:173 -iso_exclude_remove_path = _lib.iso_exclude_remove_path -iso_exclude_remove_path.restype = None -iso_exclude_remove_path.argtypes = [c_char_p] - -# ../../../libisofs/libisofs.h:178 -iso_exclude_empty = _lib.iso_exclude_empty -iso_exclude_empty.restype = None -iso_exclude_empty.argtypes = [] - -# ../../../libisofs/libisofs.h:191 -iso_tree_add_new_dir = _lib.iso_tree_add_new_dir -iso_tree_add_new_dir.restype = POINTER(struct_iso_tree_node) -iso_tree_add_new_dir.argtypes = [POINTER(struct_iso_tree_node), c_char_p] - -# ../../../libisofs/libisofs.h:197 -iso_tree_node_set_name = _lib.iso_tree_node_set_name -iso_tree_node_set_name.restype = None -iso_tree_node_set_name.argtypes = [POINTER(struct_iso_tree_node), c_char_p] - -# ../../../libisofs/libisofs.h:204 -iso_tree_print = _lib.iso_tree_print -iso_tree_print.restype = None -iso_tree_print.argtypes = [POINTER(struct_iso_tree_node), c_int] - -# ../../../libisofs/libisofs.h:220 -iso_source_new_ecma119 = _lib.iso_source_new_ecma119 -iso_source_new_ecma119.restype = POINTER(struct_burn_source) -iso_source_new_ecma119.argtypes = [POINTER(struct_iso_volset), c_int, c_int, c_int] - - -__all__ = ['iso_volume_new', 'iso_volume_new_with_root', 'iso_volume_free', -'iso_volset_free', 'iso_volume_get_root', 'iso_volume_set_volume_id', -'iso_volume_set_publisher_id', 'iso_volume_set_data_preparer_id', -'iso_tree_volume_path_to_node', 'iso_tree_volume_add_path', -'iso_tree_volume_add_new_dir', 'iso_volset_new', 'iso_tree_add_node', -'iso_tree_radd_dir', 'iso_exclude_add_path', 'iso_exclude_remove_path', -'iso_exclude_empty', 'iso_tree_add_new_dir', 'iso_tree_node_set_name', -'iso_tree_print', 'iso_source_new_ecma119'] diff --git a/bindings/python/isofs/defines.py b/bindings/python/isofs/defines.py deleted file mode 100644 index ee1e376..0000000 --- a/bindings/python/isofs/defines.py +++ /dev/null @@ -1,9 +0,0 @@ -# The automatic code generator does not wrap enums into python. As -# isofs has only two enum values publicly defined, they are hardcoded -# here. - -# from enum ecma119_extension_flag -ECMA119_ROCKRIDGE = 1 -ECMA119_JOLIET = 2 - -__all__ = ['ECMA119_ROCKRIDGE', 'ECMA119_JOLIET'] diff --git a/bindings/python/isofs/isofs.py b/bindings/python/isofs/isofs.py deleted file mode 100644 index e836ef1..0000000 --- a/bindings/python/isofs/isofs.py +++ /dev/null @@ -1,58 +0,0 @@ -# High level interface to the isofs library. - -import core -import defines -import os.path - -def _wrap_volume_property(var_name, core_setter): - def get(self): - return getattr(self, var_name) - def set(self, value): - setattr(self, var_name, value) - core_setter(self._volume, value) - return property(get, set) - -class IsoFS(object): - def __init__(self, volume_id='', publisher_id='', - data_preparer_id=''): - self._volume_id = volume_id - self._publisher_id = publisher_id - self._data_preparer_id = data_preparer_id - - self._volume = core.iso_volume_new( - volume_id, publisher_id, data_preparer_id) - self._volset = core.iso_volset_new(self._volume, volume_id) - - def __del__(self): - core.iso_volume_free(self._volume) - core.iso_volset_free(self._volset) - - volume_id = _wrap_volume_property( - '_volume_id', core.iso_volume_set_volume_id) - publisher_id = _wrap_volume_property( - '_publisher_id', core.iso_volume_set_publisher_id) - data_preparer_id = _wrap_volume_property( - '_data_preparer_id', core.iso_volume_set_data_preparer_id) - - def add(self, disc_path, path, exclude=None): #, make_parents=False): - disc_path = os.path.normpath(disc_path) - path = os.path.abspath(os.path.normpath(path)) - exclude = exclude or [] - - # Does the disc parent exist? - disc_parent, _ = os.path.split(disc_path) - if not core.iso_tree_volume_path_to_node(self._volume, disc_parent): - print "No such parent" - return # TODO: Raise exception and/or create all missing - # parents. - - # Flush all ignores that may have stayed over. - core.iso_exclude_empty() - for exclude_path in exclude: - core.iso_exclude_add_path(exclude_path) - - core.iso_tree_volume_add_path(self._volume, disc_path, path) - - def display(self): - root = core.iso_volume_get_root(self._volume) - core.iso_tree_print(root, 0) diff --git a/libisofs/Makefile b/libisofs/Makefile old mode 100755 new mode 100644 diff --git a/libisofs/ecma119.c b/libisofs/ecma119.c old mode 100755 new mode 100644 diff --git a/libisofs/ecma119.h b/libisofs/ecma119.h old mode 100755 new mode 100644 diff --git a/libisofs/libisofs.h b/libisofs/libisofs.h old mode 100755 new mode 100644 diff --git a/libisofs/rockridge.c b/libisofs/rockridge.c old mode 100755 new mode 100644 diff --git a/libisofs/rockridge.h b/libisofs/rockridge.h old mode 100755 new mode 100644 diff --git a/libisofs/susp.c b/libisofs/susp.c old mode 100755 new mode 100644 diff --git a/libisofs/susp.h b/libisofs/susp.h old mode 100755 new mode 100644 diff --git a/libisofs/tree.c b/libisofs/tree.c old mode 100755 new mode 100644 diff --git a/libisofs/tree.h b/libisofs/tree.h old mode 100755 new mode 100644 diff --git a/libisofs/util.c b/libisofs/util.c old mode 100755 new mode 100644 diff --git a/libisofs/util.h b/libisofs/util.h old mode 100755 new mode 100644 diff --git a/libisofs/volume.c b/libisofs/volume.c old mode 100755 new mode 100644 diff --git a/libisofs/volume.h b/libisofs/volume.h old mode 100755 new mode 100644