# encoding: utf-8
# module h5py.h5r
# from C:\Users\xukai\Downloads\发票2\venv\Lib\site-packages\h5py\h5r.cp311-win_amd64.pyd
# by generator 1.147
""" H5R API for object and region references. """

# imports
import builtins as __builtins__ # <module 'builtins' (built-in)>
from h5py._objects import with_phil


# Variables with simple values

DATASET_REGION = 1

OBJECT = 0

# functions

def create(*args, **kwargs): # real signature unknown
    """
    (ObjectID loc, STRING name, INT ref_type, SpaceID space=None)
        => ReferenceObject ref
    
        Create a new reference. The value of ref_type determines the kind
        of reference created:
    
        OBJECT
            Reference to an object in an HDF5 file.  Parameters "loc"
            and "name" identify the object; "space" is unused.
    
        DATASET_REGION
            Reference to a dataset region.  Parameters "loc" and
            "name" identify the dataset; the selection on "space"
            identifies the region.
    """
    pass

def dereference(*args, **kwargs): # real signature unknown
    """
    (Reference ref, ObjectID id) => ObjectID or None
    
        Open the object pointed to by the reference and return its
        identifier.  The file identifier (or the identifier for any object
        in the file) must also be provided.  Returns None if the reference
        is zero-filled.
    
        The reference may be either Reference or RegionReference.
    """
    pass

def get_name(*args, **kwargs): # real signature unknown
    """
    (Reference ref, ObjectID loc) => STRING name
    
        Determine the name of the object pointed to by this reference.
        Requires the HDF5 1.8 API.
    """
    pass

def get_obj_type(*args, **kwargs): # real signature unknown
    """
    (Reference ref, ObjectID id) => INT obj_code or None
    
        Determine what type of object the reference points to.  The
        reference may be a Reference or RegionReference.  The file
        identifier or the identifier of any object in the file must also
        be provided.
    
        The return value is one of:
    
        - h5o.TYPE_GROUP
        - h5o.TYPE_DATASET
        - h5o.TYPE_NAMED_DATATYPE
    
        If the reference is zero-filled, returns None.
    """
    pass

def get_region(*args, **kwargs): # real signature unknown
    """
    (Reference ref, ObjectID id) => SpaceID or None
    
        Retrieve the dataspace selection pointed to by the reference.
        Returns a copy of the dataset's dataspace, with the appropriate
        elements selected.  The file identifier or the identifier of any
        object in the file (including the dataset itself) must also be
        provided.
    
        The reference object must be a RegionReference.  If it is zero-filled,
        returns None.
    """
    pass

# classes

class Reference(object):
    """
    Opaque representation of an HDF5 reference.
    
            Objects of this class are created exclusively by the library and
            cannot be modified.  The read-only attribute "typecode" determines
            whether the reference is to an object in an HDF5 file (OBJECT)
            or a dataset region (DATASET_REGION).
    
            The object's truth value indicates whether it contains a nonzero
            reference.  This does not guarantee that is valid, but is useful
            for rejecting "background" elements in a dataset.
    
            Defined attributes:
              cdef ref_u ref
              cdef readonly int typecode
              cdef readonly size_t typesize
    """
    def __bool__(self, *args, **kwargs): # real signature unknown
        """ True if self else False """
        pass

    def __init__(self, *args, **kwargs): # real signature unknown
        pass

    @staticmethod # known case of __new__
    def __new__(*args, **kwargs): # real signature unknown
        """ Create and return a new object.  See help(type) for accurate signature. """
        pass

    def __reduce__(self, *args, **kwargs): # real signature unknown
        pass

    def __repr__(self, *args, **kwargs): # real signature unknown
        """ Return repr(self). """
        pass

    def __setstate__(self, *args, **kwargs): # real signature unknown
        pass

    typecode = property(lambda self: object(), lambda self, v: None, lambda self: None)  # default

    typesize = property(lambda self: object(), lambda self, v: None, lambda self: None)  # default



class RegionReference(Reference):
    """
    Opaque representation of an HDF5 region reference.
    
            This is a subclass of Reference which exists mainly for programming
            convenience.
    """
    def __init__(self, *args, **kwargs): # real signature unknown
        pass

    @staticmethod # known case of __new__
    def __new__(*args, **kwargs): # real signature unknown
        """ Create and return a new object.  See help(type) for accurate signature. """
        pass

    def __reduce__(self, *args, **kwargs): # real signature unknown
        pass

    def __repr__(self, *args, **kwargs): # real signature unknown
        """ Return repr(self). """
        pass

    def __setstate__(self, *args, **kwargs): # real signature unknown
        pass


# variables with complex values

phil = None # (!) real value is '<h5py._objects.FastRLock object at 0x000002782027E5B0>'

__loader__ = None # (!) real value is '<_frozen_importlib_external.ExtensionFileLoader object at 0x00000278202848D0>'

__spec__ = None # (!) real value is "ModuleSpec(name='h5py.h5r', loader=<_frozen_importlib_external.ExtensionFileLoader object at 0x00000278202848D0>, origin='C:\\\\Users\\\\xukai\\\\Downloads\\\\??2\\\\venv\\\\Lib\\\\site-packages\\\\h5py\\\\h5r.cp311-win_amd64.pyd')"

__test__ = {}

