# 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 .vtkCompositeDataSet import vtkCompositeDataSet

class vtkDataObjectTree(vtkCompositeDataSet):
    """
    vtkDataObjectTree - provides implementation for most abstract methods
    in the superclass vtkCompositeDataSet
    
    Superclass: vtkCompositeDataSet
    
    vtkDataObjectTree is represents a collection of datasets (including
    other composite datasets). It provides an interface to access the
    datasets through iterators. vtkDataObjectTree provides methods that
    are used by subclasses to store the datasets. vtkDataObjectTree
    provides the datastructure for a full tree representation. Subclasses
    provide the semantics for it and control how this tree is built.
    
    @sa
    vtkDataObjectTreeIterator
    """
    def CopyStructure(self, input): # real signature unknown; restored from __doc__
        """
        CopyStructure(self, input:vtkCompositeDataSet) -> None
        C++: void CopyStructure(vtkCompositeDataSet *input) override;
        
        Copies the tree structure from the input. All pointers to
        non-composite data objects are initialized to nullptr. This also
        shallow copies the meta data associated with all the nodes.
        """
        pass

    def DeepCopy(self, src): # real signature unknown; restored from __doc__
        """
        DeepCopy(self, src:vtkDataObject) -> None
        C++: void DeepCopy(vtkDataObject *src) override;
        """
        pass

    def GetActualMemorySize(self): # real signature unknown; restored from __doc__
        """
        GetActualMemorySize(self) -> int
        C++: unsigned long GetActualMemorySize() override;
        
        Return the actual size of the data in kibibytes (1024 bytes).
        This number is valid only after the pipeline has updated.
        """
        return 0

    def GetData(self, info): # real signature unknown; restored from __doc__
        """
        GetData(info:vtkInformation) -> vtkDataObjectTree
        C++: static vtkDataObjectTree *GetData(vtkInformation *info)
        GetData(v:vtkInformationVector, i:int=0) -> vtkDataObjectTree
        C++: static vtkDataObjectTree *GetData(vtkInformationVector *v,
            int i=0)
        
        Retrieve an instance of this class from an information object.
        """
        return vtkDataObjectTree

    def GetDataObjectType(self): # real signature unknown; restored from __doc__
        """
        GetDataObjectType(self) -> int
        C++: int GetDataObjectType() override;
        
        Overridden to return `VTK_DATA_OBJECT_TREE`.
        """
        return 0

    def GetDataSet(self, iter): # real signature unknown; restored from __doc__
        """
        GetDataSet(self, iter:vtkCompositeDataIterator) -> vtkDataObject
        C++: vtkDataObject *GetDataSet(vtkCompositeDataIterator *iter)
            override;
        GetDataSet(self, flatIndex:int) -> vtkDataObject
        C++: virtual vtkDataObject *GetDataSet(unsigned int flatIndex)
        
        Returns the dataset located at the position pointed by the
        iterator. The iterator does not need to be iterating over this
        dataset itself. It can be an iterator for composite dataset with
        similar structure (achieved by using CopyStructure).
        """
        return vtkDataObject

    def GetMetaData(self, iter): # real signature unknown; restored from __doc__
        """
        GetMetaData(self, iter:vtkCompositeDataIterator) -> vtkInformation
        C++: virtual vtkInformation *GetMetaData(
            vtkCompositeDataIterator *iter)
        
        Returns the meta-data associated with the position pointed by the
        iterator. This will create a new vtkInformation object if none
        already exists. Use HasMetaData to avoid creating the
        vtkInformation object unnecessarily. The iterator does not need
        to be iterating over this dataset itself. It can be an iterator
        for composite dataset with similar structure (achieved by using
        CopyStructure).
        """
        pass

    def GetNumberOfCells(self): # real signature unknown; restored from __doc__
        """
        GetNumberOfCells(self) -> int
        C++: vtkIdType GetNumberOfCells() override;
        
        Returns the total number of cells of all blocks. This will
        iterate over all blocks and call GetNumberOfPoints() so it might
        be expensive.
        """
        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 GetNumberOfPoints(self): # real signature unknown; restored from __doc__
        """
        GetNumberOfPoints(self) -> int
        C++: vtkIdType GetNumberOfPoints() override;
        
        Returns the total number of points of all blocks. This will
        iterate over all blocks and call GetNumberOfPoints() so it might
        be expansive.
        """
        return 0

    def HasMetaData(self, iter): # real signature unknown; restored from __doc__
        """
        HasMetaData(self, iter:vtkCompositeDataIterator) -> int
        C++: virtual int HasMetaData(vtkCompositeDataIterator *iter)
        
        Returns if any meta-data associated with the position pointed by
        the iterator. The iterator does not need to be iterating over
        this dataset itself. It can be an iterator for composite dataset
        with similar structure (achieved by using CopyStructure).
        """
        return 0

    def Initialize(self): # real signature unknown; restored from __doc__
        """
        Initialize(self) -> None
        C++: void Initialize() override;
        
        Restore data object to initial state,
        """
        pass

    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) -> vtkDataObjectTree
        C++: vtkDataObjectTree *NewInstance()
        """
        return vtkDataObjectTree

    def NewIterator(self): # real signature unknown; restored from __doc__
        """
        NewIterator(self) -> vtkCompositeDataIterator
        C++: vtkCompositeDataIterator *NewIterator() override;
        
        Return a new iterator (the iterator has to be deleted by user).
        
        * Use NewTreeIterator when you have a pointer to a
          vtkDataObjectTree
        * and NewIterator when you have a pointer to a
          vtkCompositeDataSet;
        * NewIterator is inherited and calls NewTreeIterator internally.
        """
        return vtkCompositeDataIterator

    def NewTreeIterator(self): # real signature unknown; restored from __doc__
        """
        NewTreeIterator(self) -> vtkDataObjectTreeIterator
        C++: virtual vtkDataObjectTreeIterator *NewTreeIterator()
        
        Return a new iterator (the iterator has to be deleted by user).
        """
        return vtkDataObjectTreeIterator

    def RecursiveShallowCopy(self, src): # real signature unknown; restored from __doc__
        """
        RecursiveShallowCopy(self, src:vtkDataObject) -> None
        C++: void RecursiveShallowCopy(vtkDataObject *src) override;
        
        For historical reasons, `vtkCompositeDataSet::ShallowCopy` simply
        pass pointers to the leaf non-composite datasets. In some cases,
        we truly want to shallow copy those leaf non-composite datasets
        as well. For those cases, use this method.
        """
        pass

    def SafeDownCast(self, o): # real signature unknown; restored from __doc__
        """
        SafeDownCast(o:vtkObjectBase) -> vtkDataObjectTree
        C++: static vtkDataObjectTree *SafeDownCast(vtkObjectBase *o)
        """
        return vtkDataObjectTree

    def SetDataSet(self, iter, dataObj): # real signature unknown; restored from __doc__
        """
        SetDataSet(self, iter:vtkCompositeDataIterator,
            dataObj:vtkDataObject) -> None
        C++: void SetDataSet(vtkCompositeDataIterator *iter,
            vtkDataObject *dataObj) override;
        
        Sets the data set at the location pointed by the iterator. The
        iterator does not need to be iterating over this dataset itself.
        It can be any composite datasite with similar structure (achieved
        by using CopyStructure).
        """
        pass

    def SetDataSetFrom(self, iter, dataObj): # real signature unknown; restored from __doc__
        """
        SetDataSetFrom(self, iter:vtkDataObjectTreeIterator,
            dataObj:vtkDataObject) -> None
        C++: void SetDataSetFrom(vtkDataObjectTreeIterator *iter,
            vtkDataObject *dataObj)
        
        Sets the data at the location provided by a
        vtkDataObjectTreeIterator
        """
        pass

    def ShallowCopy(self, src): # real signature unknown; restored from __doc__
        """
        ShallowCopy(self, src:vtkDataObject) -> None
        C++: void ShallowCopy(vtkDataObject *src) override;
        
        Shallow and Deep copy.
        """
        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__': 'vtkDataObjectTree', 'IsTypeOf': <method 'IsTypeOf' of 'vtkmodules.vtkCommonDataModel.vtkDataObjectTree' objects>, 'IsA': <method 'IsA' of 'vtkmodules.vtkCommonDataModel.vtkDataObjectTree' objects>, 'SafeDownCast': <method 'SafeDownCast' of 'vtkmodules.vtkCommonDataModel.vtkDataObjectTree' objects>, 'NewInstance': <method 'NewInstance' of 'vtkmodules.vtkCommonDataModel.vtkDataObjectTree' objects>, 'GetNumberOfGenerationsFromBaseType': <method 'GetNumberOfGenerationsFromBaseType' of 'vtkmodules.vtkCommonDataModel.vtkDataObjectTree' objects>, 'GetNumberOfGenerationsFromBase': <method 'GetNumberOfGenerationsFromBase' of 'vtkmodules.vtkCommonDataModel.vtkDataObjectTree' objects>, 'NewTreeIterator': <method 'NewTreeIterator' of 'vtkmodules.vtkCommonDataModel.vtkDataObjectTree' objects>, 'NewIterator': <method 'NewIterator' of 'vtkmodules.vtkCommonDataModel.vtkDataObjectTree' objects>, 'CopyStructure': <method 'CopyStructure' of 'vtkmodules.vtkCommonDataModel.vtkDataObjectTree' objects>, 'SetDataSet': <method 'SetDataSet' of 'vtkmodules.vtkCommonDataModel.vtkDataObjectTree' objects>, 'SetDataSetFrom': <method 'SetDataSetFrom' of 'vtkmodules.vtkCommonDataModel.vtkDataObjectTree' objects>, 'GetDataSet': <method 'GetDataSet' of 'vtkmodules.vtkCommonDataModel.vtkDataObjectTree' objects>, 'GetMetaData': <method 'GetMetaData' of 'vtkmodules.vtkCommonDataModel.vtkDataObjectTree' objects>, 'HasMetaData': <method 'HasMetaData' of 'vtkmodules.vtkCommonDataModel.vtkDataObjectTree' objects>, 'GetActualMemorySize': <method 'GetActualMemorySize' of 'vtkmodules.vtkCommonDataModel.vtkDataObjectTree' objects>, 'Initialize': <method 'Initialize' of 'vtkmodules.vtkCommonDataModel.vtkDataObjectTree' objects>, 'ShallowCopy': <method 'ShallowCopy' of 'vtkmodules.vtkCommonDataModel.vtkDataObjectTree' objects>, 'DeepCopy': <method 'DeepCopy' of 'vtkmodules.vtkCommonDataModel.vtkDataObjectTree' objects>, 'RecursiveShallowCopy': <method 'RecursiveShallowCopy' of 'vtkmodules.vtkCommonDataModel.vtkDataObjectTree' objects>, 'GetNumberOfPoints': <method 'GetNumberOfPoints' of 'vtkmodules.vtkCommonDataModel.vtkDataObjectTree' objects>, 'GetNumberOfCells': <method 'GetNumberOfCells' of 'vtkmodules.vtkCommonDataModel.vtkDataObjectTree' objects>, 'GetData': <method 'GetData' of 'vtkmodules.vtkCommonDataModel.vtkDataObjectTree' objects>, 'GetDataObjectType': <method 'GetDataObjectType' of 'vtkmodules.vtkCommonDataModel.vtkDataObjectTree' objects>, '__new__': <built-in method __new__ of type object at 0x00007FF81D61B3D0>, '__repr__': <slot wrapper '__repr__' of 'vtkmodules.vtkCommonDataModel.vtkDataObjectTree' objects>, '__str__': <slot wrapper '__str__' of 'vtkmodules.vtkCommonDataModel.vtkDataObjectTree' objects>, '__getattribute__': <slot wrapper '__getattribute__' of 'vtkmodules.vtkCommonDataModel.vtkDataObjectTree' objects>, '__setattr__': <slot wrapper '__setattr__' of 'vtkmodules.vtkCommonDataModel.vtkDataObjectTree' objects>, '__delattr__': <slot wrapper '__delattr__' of 'vtkmodules.vtkCommonDataModel.vtkDataObjectTree' objects>, '__dict__': <attribute '__dict__' of 'vtkmodules.vtkCommonDataModel.vtkDataObjectTree' objects>, '__this__': <attribute '__this__' of 'vtkmodules.vtkCommonDataModel.vtkDataObjectTree' objects>, '__doc__': 'vtkDataObjectTree - provides implementation for most abstract methods\\nin the superclass vtkCompositeDataSet\\n\\nSuperclass: vtkCompositeDataSet\\n\\nvtkDataObjectTree is represents a collection of datasets (including\\nother composite datasets). It provides an interface to access the\\ndatasets through iterators. vtkDataObjectTree provides methods that\\nare used by subclasses to store the datasets. vtkDataObjectTree\\nprovides the datastructure for a full tree representation. Subclasses\\nprovide the semantics for it and control how this tree is built.\\n\\n@sa\\nvtkDataObjectTreeIterator\\n\\n'})"
    __vtkname__ = 'vtkDataObjectTree'


