# encoding: utf-8
# module vtkmodules.vtkCommonDataModel
# from C:\Users\xukai\Downloads\发票2\venv\Lib\site-packages\vtkmodules\vtkCommonDataModel.cp311-win_amd64.pyd
# by generator 1.147
# no doc

# imports
import vtkmodules.vtkCommonCore as __vtkmodules_vtkCommonCore
import vtkmodules.vtkCommonMath as __vtkmodules_vtkCommonMath
import vtkmodules.vtkCommonTransforms as __vtkmodules_vtkCommonTransforms


from .vtkAbstractCellLinks import vtkAbstractCellLinks

class vtkCellLinks(vtkAbstractCellLinks):
    """
    vtkCellLinks - object represents upward pointers from points to list
    of cells using each point
    
    Superclass: vtkAbstractCellLinks
    
    vtkCellLinks is a supplemental object to vtkCellArray and
    vtkCellTypes, enabling access from points to the cells using the
    points. vtkCellLinks is a list of cell ids, each such link
    representing a dynamic list of cell ids using the point. The
    information provided by this object can be used to determine
    neighbors and construct other local topological information.
    
    @warning
    vtkCellLinks supports incremental (i.e., "editable") operations such
    as inserting a new cell, or deleting a point. Because of this, it is
    less memory efficient, and slower to construct and delete than static
    classes such as vtkStaticCellLinks or vtkStaticCellLinksTemplate.
    However these other classes are typically meant for one-time (static)
    construction.
    
    @sa
    vtkCellArray vtkCellTypes vtkStaticCellLinks
    vtkStaticCellLinksTemplate
    """
    def AddCellReference(self, cellId, ptId): # real signature unknown; restored from __doc__
        """
        AddCellReference(self, cellId:int, ptId:int) -> None
        C++: void AddCellReference(vtkIdType cellId, vtkIdType ptId)
        
        Add the reference to the cell (cellId) from the point (ptId).
        This adds a reference to the cellId from the cell list, but does
        not resize the list (extend memory with ResizeCellList(), if
        necessary).
        """
        pass

    def Allocate(self, numLinks, ext=1000): # real signature unknown; restored from __doc__
        """
        Allocate(self, numLinks:int, ext:int=1000) -> None
        C++: void Allocate(vtkIdType numLinks, vtkIdType ext=1000)
        
        Allocate the specified number of links (i.e., number of points)
        that will be built.
        """
        pass

    def BuildLinks(self, data): # real signature unknown; restored from __doc__
        """
        BuildLinks(self, data:vtkDataSet) -> None
        C++: void BuildLinks(vtkDataSet *data) override;
        
        Build the link list array. All subclasses of vtkAbstractCellLinks
        must support this method.
        """
        pass

    def DeepCopy(self, src): # real signature unknown; restored from __doc__
        """
        DeepCopy(self, src:vtkAbstractCellLinks) -> None
        C++: void DeepCopy(vtkAbstractCellLinks *src) override;
        
        Standard DeepCopy method.  Since this object contains no
        reference to other objects, there is no ShallowCopy.
        """
        pass

    def DeletePoint(self, ptId): # real signature unknown; restored from __doc__
        """
        DeletePoint(self, ptId:int) -> None
        C++: void DeletePoint(vtkIdType ptId)
        
        Delete point (and storage) by destroying links to using cells.
        """
        pass

    def GetActualMemorySize(self): # real signature unknown; restored from __doc__
        """
        GetActualMemorySize(self) -> int
        C++: unsigned long GetActualMemorySize() override;
        
        Return the memory in kibibytes (1024 bytes) consumed by this cell
        links array. Used to support streaming and reading/writing data.
        The value returned is guaranteed to be greater than or equal to
        the memory required to actually represent the data represented by
        this object. The information returned is valid only after the
        pipeline has been updated.
        """
        return 0

    def GetCells(self, ptId): # real signature unknown; restored from __doc__
        """
        GetCells(self, ptId:int) -> Pointer
        C++: vtkIdType *GetCells(vtkIdType ptId)
        
        Return a list of cell ids using the point.
        """
        pass

    def GetNcells(self, ptId): # real signature unknown; restored from __doc__
        """
        GetNcells(self, ptId:int) -> int
        C++: vtkIdType GetNcells(vtkIdType ptId)
        
        Get the number of cells using the point specified by ptId.
        """
        return 0

    def GetNumberOfGenerationsFromBase(self, type): # real signature unknown; restored from __doc__
        """
        GetNumberOfGenerationsFromBase(self, type:str) -> int
        C++: vtkIdType GetNumberOfGenerationsFromBase(const char *type)
            override;
        
        Given the name of a base class of this class type, return the
        distance of inheritance between this class type and the named
        class (how many generations of inheritance are there between this
        class and the named class). If the named class is not in this
        class's inheritance tree, return a negative value. Valid
        responses will always be nonnegative. This method works in
        combination with vtkTypeMacro found in vtkSetGet.h.
        """
        return 0

    def GetNumberOfGenerationsFromBaseType(self, type): # real signature unknown; restored from __doc__
        """
        GetNumberOfGenerationsFromBaseType(type:str) -> int
        C++: static vtkIdType GetNumberOfGenerationsFromBaseType(
            const char *type)
        
        Given a the name of a base class of this class type, return the
        distance of inheritance between this class type and the named
        class (how many generations of inheritance are there between this
        class and the named class). If the named class is not in this
        class's inheritance tree, return a negative value. Valid
        responses will always be nonnegative. This method works in
        combination with vtkTypeMacro found in vtkSetGet.h.
        """
        return 0

    def Initialize(self): # real signature unknown; restored from __doc__
        """
        Initialize(self) -> None
        C++: void Initialize() override;
        
        Clear out any previously allocated data structures
        """
        pass

    def InsertNextCellReference(self, ptId, cellId): # real signature unknown; restored from __doc__
        """
        InsertNextCellReference(self, ptId:int, cellId:int) -> None
        C++: void InsertNextCellReference(vtkIdType ptId,
            vtkIdType cellId)
        
        Insert a cell id into the list of cells (at the end) using the
        cell id provided. (Make sure to extend the link list (if
        necessary) using the method ResizeCellList().)
        """
        pass

    def InsertNextPoint(self, numLinks): # real signature unknown; restored from __doc__
        """
        InsertNextPoint(self, numLinks:int) -> int
        C++: vtkIdType InsertNextPoint(int numLinks)
        
        Insert a new point into the cell-links data structure. The size
        parameter is the initial size of the list.
        """
        return 0

    def IsA(self, type): # real signature unknown; restored from __doc__
        """
        IsA(self, type:str) -> int
        C++: vtkTypeBool IsA(const char *type) override;
        
        Return 1 if this class is the same type of (or a subclass of) the
        named class. Returns 0 otherwise. This method works in
        combination with vtkTypeMacro found in vtkSetGet.h.
        """
        return 0

    def IsTypeOf(self, type): # real signature unknown; restored from __doc__
        """
        IsTypeOf(type:str) -> int
        C++: static vtkTypeBool IsTypeOf(const char *type)
        
        Return 1 if this class type is the same type of (or a subclass
        of) the named class. Returns 0 otherwise. This method works in
        combination with vtkTypeMacro found in vtkSetGet.h.
        """
        return 0

    def NewInstance(self): # real signature unknown; restored from __doc__
        """
        NewInstance(self) -> vtkCellLinks
        C++: vtkCellLinks *NewInstance()
        """
        return vtkCellLinks

    def RemoveCellReference(self, cellId, ptId): # real signature unknown; restored from __doc__
        """
        RemoveCellReference(self, cellId:int, ptId:int) -> None
        C++: void RemoveCellReference(vtkIdType cellId, vtkIdType ptId)
        
        Delete the reference to the cell (cellId) from the point (ptId).
        This removes the reference to the cellId from the cell list, but
        does not resize the list (recover memory with ResizeCellList(),
        if necessary).
        """
        pass

    def Reset(self): # real signature unknown; restored from __doc__
        """
        Reset(self) -> None
        C++: void Reset() override;
        
        Reset to a state of no entries without freeing the memory.
        """
        pass

    def ResizeCellList(self, ptId, size): # real signature unknown; restored from __doc__
        """
        ResizeCellList(self, ptId:int, size:int) -> None
        C++: void ResizeCellList(vtkIdType ptId, int size)
        
        Change the length of a point's link list (i.e., list of cells
        using a point) by the size specified.
        """
        pass

    def SafeDownCast(self, o): # real signature unknown; restored from __doc__
        """
        SafeDownCast(o:vtkObjectBase) -> vtkCellLinks
        C++: static vtkCellLinks *SafeDownCast(vtkObjectBase *o)
        """
        return vtkCellLinks

    def SelectCells(self, minMaxDegree, *args, **kwargs): # real signature unknown; NOTE: unreliably restored from __doc__ 
        """
        SelectCells(self, minMaxDegree:[int, int], cellSelection:[int,
            ...]) -> None
        C++: void SelectCells(vtkIdType minMaxDegree[2],
            unsigned char *cellSelection) override;
        
        Select all cells with a point degree in the range
        [minDegree,maxDegree). The degree is the number of cells using a
        point. The selection is indicated through the provided unsigned
        char array, with a non-zero value indicates selection. The memory
        allocated for cellSelection must be the maximum cell id
        referenced in the links.
        """
        pass

    def Squeeze(self): # real signature unknown; restored from __doc__
        """
        Squeeze(self) -> None
        C++: void Squeeze() override;
        
        Reclaim any unused memory.
        """
        pass

    def __delattr__(self, *args, **kwargs): # real signature unknown
        """ Implement delattr(self, name). """
        pass

    def __getattribute__(self, *args, **kwargs): # real signature unknown
        """ Return getattr(self, name). """
        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 __repr__(self, *args, **kwargs): # real signature unknown
        """ Return repr(self). """
        pass

    def __setattr__(self, *args, **kwargs): # real signature unknown
        """ Implement setattr(self, name, value). """
        pass

    def __str__(self, *args, **kwargs): # real signature unknown
        """ Return str(self). """
        pass

    __this__ = property(lambda self: object(), lambda self, v: None, lambda self: None)  # default
    """Pointer to the C++ object."""


    __dict__ = None # (!) real value is 'mappingproxy({\'__vtkname__\': \'vtkCellLinks\', \'IsTypeOf\': <method \'IsTypeOf\' of \'vtkmodules.vtkCommonDataModel.vtkCellLinks\' objects>, \'IsA\': <method \'IsA\' of \'vtkmodules.vtkCommonDataModel.vtkCellLinks\' objects>, \'SafeDownCast\': <method \'SafeDownCast\' of \'vtkmodules.vtkCommonDataModel.vtkCellLinks\' objects>, \'NewInstance\': <method \'NewInstance\' of \'vtkmodules.vtkCommonDataModel.vtkCellLinks\' objects>, \'GetNumberOfGenerationsFromBaseType\': <method \'GetNumberOfGenerationsFromBaseType\' of \'vtkmodules.vtkCommonDataModel.vtkCellLinks\' objects>, \'GetNumberOfGenerationsFromBase\': <method \'GetNumberOfGenerationsFromBase\' of \'vtkmodules.vtkCommonDataModel.vtkCellLinks\' objects>, \'BuildLinks\': <method \'BuildLinks\' of \'vtkmodules.vtkCommonDataModel.vtkCellLinks\' objects>, \'Allocate\': <method \'Allocate\' of \'vtkmodules.vtkCommonDataModel.vtkCellLinks\' objects>, \'Initialize\': <method \'Initialize\' of \'vtkmodules.vtkCommonDataModel.vtkCellLinks\' objects>, \'GetNcells\': <method \'GetNcells\' of \'vtkmodules.vtkCommonDataModel.vtkCellLinks\' objects>, \'GetCells\': <method \'GetCells\' of \'vtkmodules.vtkCommonDataModel.vtkCellLinks\' objects>, \'SelectCells\': <method \'SelectCells\' of \'vtkmodules.vtkCommonDataModel.vtkCellLinks\' objects>, \'InsertNextPoint\': <method \'InsertNextPoint\' of \'vtkmodules.vtkCommonDataModel.vtkCellLinks\' objects>, \'InsertNextCellReference\': <method \'InsertNextCellReference\' of \'vtkmodules.vtkCommonDataModel.vtkCellLinks\' objects>, \'DeletePoint\': <method \'DeletePoint\' of \'vtkmodules.vtkCommonDataModel.vtkCellLinks\' objects>, \'RemoveCellReference\': <method \'RemoveCellReference\' of \'vtkmodules.vtkCommonDataModel.vtkCellLinks\' objects>, \'AddCellReference\': <method \'AddCellReference\' of \'vtkmodules.vtkCommonDataModel.vtkCellLinks\' objects>, \'ResizeCellList\': <method \'ResizeCellList\' of \'vtkmodules.vtkCommonDataModel.vtkCellLinks\' objects>, \'Squeeze\': <method \'Squeeze\' of \'vtkmodules.vtkCommonDataModel.vtkCellLinks\' objects>, \'Reset\': <method \'Reset\' of \'vtkmodules.vtkCommonDataModel.vtkCellLinks\' objects>, \'GetActualMemorySize\': <method \'GetActualMemorySize\' of \'vtkmodules.vtkCommonDataModel.vtkCellLinks\' objects>, \'DeepCopy\': <method \'DeepCopy\' of \'vtkmodules.vtkCommonDataModel.vtkCellLinks\' objects>, \'__new__\': <built-in method __new__ of type object at 0x00007FF81D615450>, \'__repr__\': <slot wrapper \'__repr__\' of \'vtkmodules.vtkCommonDataModel.vtkCellLinks\' objects>, \'__str__\': <slot wrapper \'__str__\' of \'vtkmodules.vtkCommonDataModel.vtkCellLinks\' objects>, \'__getattribute__\': <slot wrapper \'__getattribute__\' of \'vtkmodules.vtkCommonDataModel.vtkCellLinks\' objects>, \'__setattr__\': <slot wrapper \'__setattr__\' of \'vtkmodules.vtkCommonDataModel.vtkCellLinks\' objects>, \'__delattr__\': <slot wrapper \'__delattr__\' of \'vtkmodules.vtkCommonDataModel.vtkCellLinks\' objects>, \'__dict__\': <attribute \'__dict__\' of \'vtkmodules.vtkCommonDataModel.vtkCellLinks\' objects>, \'__this__\': <attribute \'__this__\' of \'vtkmodules.vtkCommonDataModel.vtkCellLinks\' objects>, \'__doc__\': \'vtkCellLinks - object represents upward pointers from points to list\\nof cells using each point\\n\\nSuperclass: vtkAbstractCellLinks\\n\\nvtkCellLinks is a supplemental object to vtkCellArray and\\nvtkCellTypes, enabling access from points to the cells using the\\npoints. vtkCellLinks is a list of cell ids, each such link\\nrepresenting a dynamic list of cell ids using the point. The\\ninformation provided by this object can be used to determine\\nneighbors and construct other local topological information.\\n\\n@warning\\nvtkCellLinks supports incremental (i.e., "editable") operations such\\nas inserting a new cell, or deleting a point. Because of this, it is\\nless memory efficient, and slower to construct and delete than static\\nclasses such as vtkStaticCellLinks or vtkStaticCellLinksTemplate.\\nHowever these other classes are typically meant for one-time (static)\\nconstruction.\\n\\n@sa\\nvtkCellArray vtkCellTypes vtkStaticCellLinks\\nvtkStaticCellLinksTemplate\\n\\n\'})'
    __vtkname__ = 'vtkCellLinks'


