# encoding: utf-8
# module h5py.h5a
# from C:\Users\xukai\Downloads\发票2\venv\Lib\site-packages\h5py\h5a.cp311-win_amd64.pyd
# by generator 1.147
""" Provides access to the low-level HDF5 "H5A" attribute interface. """

# imports
import builtins as __builtins__ # <module 'builtins' (built-in)>
from h5py._objects import with_phil

import h5py._objects as __h5py__objects


# functions

def create(*args, **kwargs): # real signature unknown
    """
    (ObjectID loc, STRING name, TypeID tid, SpaceID space, **kwds) => AttrID
    
        Create a new attribute, attached to an existing object.
    
        STRING obj_name (".")
            Attach attribute to this group member instead
    
        PropID lapl
            Link access property list for obj_name
    """
    pass

def delete(*args, **kwargs): # real signature unknown
    """
    (ObjectID loc, STRING name=, INT index=, **kwds)
    
        Remove an attribute from an object.  Specify exactly one of "name"
        or "index". Keyword-only arguments:
    
        STRING obj_name (".")
            Attribute is attached to this group member
    
        PropID lapl (None)
            Link access property list for obj_name
    
        INT index_type (h5.INDEX_NAME)
    
        INT order (h5.ITER_INC)
    """
    pass

def exists(*args, **kwargs): # real signature unknown
    """
    (ObjectID loc, STRING name, **kwds) => BOOL
    
        Determine if an attribute is attached to this object.  Keywords:
    
        STRING obj_name (".")
            Look for attributes attached to this group member
    
        PropID lapl (None):
            Link access property list for obj_name
    """
    pass

def get_info(*args, **kwargs): # real signature unknown
    """
    (ObjectID loc, STRING name=, INT index=, **kwds) => AttrInfo
    
        Get information about an attribute, in one of two ways:
    
        1. If you have the attribute identifier, just pass it in
        2. If you have the parent object, supply it and exactly one of
           either name or index.
    
        STRING obj_name (".")
            Use this group member instead
    
        PropID lapl (None)
            Link access property list for obj_name
    
        INT index_type (h5.INDEX_NAME)
            Which index to use
    
        INT order (h5.ITER_INC)
            What order the index is in
    """
    pass

def get_num_attrs(*args, **kwargs): # real signature unknown
    """
    (ObjectID loc) => INT
    
        Determine the number of attributes attached to an HDF5 object.
    """
    pass

def iterate(*args, **kwargs): # real signature unknown
    """
    (ObjectID loc, CALLABLE func, INT index=0, **kwds) => <Return value from func>
    
        Iterate a callable (function, method or callable object) over the
        attributes attached to this object.  You callable should have the
        signature::
    
            func(STRING name) => Result
    
        or if the keyword argument "info" is True::
    
            func(STRING name, AttrInfo info) => Result
    
        Returning None continues iteration; returning anything else aborts
        iteration and returns that value.  Keywords:
    
        BOOL info (False)
            Callback is func(STRING name, AttrInfo info), not func(STRING name)
    
        INT index_type (h5.INDEX_NAME)
            Which index to use
    
        INT order (h5.ITER_INC)
            Index order to use
    """
    pass

def open(*args, **kwargs): # real signature unknown
    """
    (ObjectID loc, STRING name=, INT index=, **kwds) => AttrID
    
        Open an attribute attached to an existing object.  You must specify
        exactly one of either name or idx.  Keywords are:
    
        STRING obj_name (".")
            Attribute is attached to this group member
    
        PropID lapl (None)
            Link access property list for obj_name
    
        INT index_type (h5.INDEX_NAME)
    
        INT order (h5.ITER_INC)
    """
    pass

def rename(*args, **kwargs): # real signature unknown
    """
    (ObjectID loc, STRING name, STRING new_name, **kwds)
    
        Rename an attribute.  Keywords:
    
        STRING obj_name (".")
            Attribute is attached to this group member
    
        PropID lapl (None)
            Link access property list for obj_name
    """
    pass

def __pyx_unpickle_AttrID(*args, **kwargs): # real signature unknown
    pass

def __pyx_unpickle__AttrVisitor(*args, **kwargs): # real signature unknown
    pass

# classes

class AttrID(__h5py__objects.ObjectID):
    """
    Logical representation of an HDF5 attribute identifier.
    
            Objects of this class can be used in any HDF5 function call
            which expects an attribute identifier.  Additionally, all ``H5A*``
            functions which always take an attribute instance as the first
            argument are presented as methods of this class.
    
            * Hashable: No
            * Equality: Identifier comparison
    """
    def get_name(self, *args, **kwargs): # real signature unknown
        """
        () => STRING name
        
                Determine the name of this attribute.
        """
        pass

    def get_space(self, *args, **kwargs): # real signature unknown
        """
        () => SpaceID
        
                Create and return a copy of the attribute's dataspace.
        """
        pass

    def get_storage_size(self, *args, **kwargs): # real signature unknown
        """
        () => INT
        
                Get the amount of storage required for this attribute.
        """
        pass

    def get_type(self, *args, **kwargs): # real signature unknown
        """
        () => TypeID
        
                Create and return a copy of the attribute's datatype.
        """
        pass

    def read(self, *args, **kwargs): # real signature unknown
        """
        (NDARRAY arr, TypeID mtype=None)
        
                Read the attribute data into the given Numpy array.  Note that the
                Numpy array must have the same shape as the HDF5 attribute, and a
                conversion-compatible datatype.
        
                The Numpy array must be writable and C-contiguous.  If this is not
                the case, the read will fail with an exception.
        
                If provided, the HDF5 TypeID mtype will override the array's dtype.
        """
        pass

    def write(self, *args, **kwargs): # real signature unknown
        """
        (NDARRAY arr)
        
                Write the contents of a Numpy array to the attribute.  Note that
                the Numpy array must have the same shape as the HDF5 attribute, and
                a conversion-compatible datatype.
        
                The Numpy array must be C-contiguous.  If this is not the case,
                the write will fail with an exception.
        """
        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 __setstate__(self, *args, **kwargs): # real signature unknown
        pass

    dtype = property(lambda self: object(), lambda self, v: None, lambda self: None)  # default
    """A Numpy-stype dtype object representing the attribute's datatype"""

    name = property(lambda self: object(), lambda self, v: None, lambda self: None)  # default
    """The attribute's name"""

    shape = property(lambda self: object(), lambda self, v: None, lambda self: None)  # default
    """A Numpy-style shape tuple representing the attribute's dataspace"""



class AttrInfo(object):
    # no doc
    def _hash(self, *args, **kwargs): # real signature unknown
        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 __setstate__(self, *args, **kwargs): # real signature unknown
        pass

    corder = property(lambda self: object(), lambda self, v: None, lambda self: None)  # default
    """Creation order"""

    corder_valid = property(lambda self: object(), lambda self, v: None, lambda self: None)  # default
    """Indicates if the creation order is valid"""

    cset = property(lambda self: object(), lambda self, v: None, lambda self: None)  # default
    """Character set of attribute name (integer typecode from h5t)"""

    data_size = property(lambda self: object(), lambda self, v: None, lambda self: None)  # default
    """Size of raw data"""



class _AttrVisitor(object):
    # no doc
    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 __setstate__(self, *args, **kwargs): # real signature unknown
        pass


# variables with complex values

phil = None # (!) real value is '<h5py._objects.FastRLock object at 0x000001CBC75BE5B0>'

__loader__ = None # (!) real value is '<_frozen_importlib_external.ExtensionFileLoader object at 0x000001CBC7F20190>'

__spec__ = None # (!) real value is "ModuleSpec(name='h5py.h5a', loader=<_frozen_importlib_external.ExtensionFileLoader object at 0x000001CBC7F20190>, origin='C:\\\\Users\\\\xukai\\\\Downloads\\\\??2\\\\venv\\\\Lib\\\\site-packages\\\\h5py\\\\h5a.cp311-win_amd64.pyd')"

__test__ = {}

