# Path: arrayfire/library.py
# class _Enum(object):
#     __metaclass__ = _MetaEnum
# 
# class _Enum_Type(object):
#     def __init__(self, v):
#         self.value = v


from .util import *
from .library import (_Enum, _Enum_Type)
    from .util import safe_call as safe_call
    from .library import backend
    from .util import safe_call as safe_call
    from .library import backend
    from .util import safe_call as safe_call
    from .library import backend
    from .util import safe_call as safe_call
    from .library import backend
    from .util import safe_call as safe_call
    from .library import backend
    from .util import safe_call as safe_call
    from .library import backend
    from .util import safe_call as safe_call
    from .library import backend
    from .util import safe_call as safe_call
    from .library import backend
    from .util import safe_call as safe_call
    from .library import backend
    import ctypes as ct
    import ctypes as ct
    import ctypes as ct
    import ctypes as ct
    import ctypes as ct
    import ctypes as ct
    import ctypes as ct
    import ctypes as ct
    import ctypes as ct
#######################################################
# Copyright (c) 2015, ArrayFire
# All rights reserved.
#
# This file is distributed under 3-clause BSD license.
# The complete license agreement can be obtained at:
# http://arrayfire.com/licenses/BSD-3-Clause
########################################################

"""
Functions specific to OpenCL backend.

This module provides interoperability with other OpenCL libraries.
"""


class DEVICE_TYPE(_Enum):
    """
    ArrayFire wrapper for CL_DEVICE_TYPE
    """
    CPU = _Enum_Type(1<<1)
    GPU = _Enum_Type(1<<2)
    ACC = _Enum_Type(1<<3)
    UNKNOWN = _Enum_Type(-1)


# Path: arrayfire/library.py
# class _Enum(object):
#     __metaclass__ = _MetaEnum
# 
# class _Enum_Type(object):
#     def __init__(self, v):
#         self.value = v


# Path: arrayfire/opencl.py
from .util import *
from .library import (_Enum, _Enum_Type)
    from .util import safe_call as safe_call
    from .library import backend
    from .util import safe_call as safe_call
    from .library import backend
    from .util import safe_call as safe_call
    from .library import backend
    from .util import safe_call as safe_call
    from .library import backend
    from .util import safe_call as safe_call
    from .library import backend
    from .util import safe_call as safe_call
    from .library import backend
    from .util import safe_call as safe_call
    from .library import backend
    from .util import safe_call as safe_call
    from .library import backend
    from .util import safe_call as safe_call
    from .library import backend
    import ctypes as ct
    import ctypes as ct
    import ctypes as ct
    import ctypes as ct
    import ctypes as ct
    import ctypes as ct
    import ctypes as ct
    import ctypes as ct
    import ctypes as ct

#######################################################
# Copyright (c) 2015, ArrayFire
# All rights reserved.
#
# This file is distributed under 3-clause BSD license.
# The complete license agreement can be obtained at:
# http://arrayfire.com/licenses/BSD-3-Clause
########################################################

"""
Functions specific to OpenCL backend.

This module provides interoperability with other OpenCL libraries.
"""


class DEVICE_TYPE(_Enum):
    """
    ArrayFire wrapper for CL_DEVICE_TYPE
    """
    CPU = _Enum_Type(1<<1)
    GPU = _Enum_Type(1<<2)
    ACC = _Enum_Type(1<<3)
    UNKNOWN = _Enum_Type(-1)


class PLATFORM(_Enum):