# 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


class vtkDataAssemblyUtilities(__vtkmodules_vtkCommonCore.vtkObject):
    """
    vtkDataAssemblyUtilities - collections of utilities for
    vtkDataAssembly
    
    Superclass: vtkObject
    
    vtkDataAssemblyUtilities provides useful utilities for working with
    vtkDataAssembly.
    """
    def GenerateCompositeDataSetFromHierarchy(self, input, hierarchy): # real signature unknown; restored from __doc__
        """
        GenerateCompositeDataSetFromHierarchy(
            input:vtkPartitionedDataSetCollection,
            hierarchy:vtkDataAssembly) -> vtkCompositeDataSet
        C++: static vtkSmartPointer<vtkCompositeDataSet> GenerateCompositeDataSetFromHierarchy(
            vtkPartitionedDataSetCollection *input,
            vtkDataAssembly *hierarchy)
        
        Inverse of `GenerateHierarchy`. Given a
        vtkPartitionedDataSetCollection and a vtkDataAssembly
        representing a target hierarchy, create a appropriate
        vtkCompositeDataSet subclass representing that hierarchy.
        
        A note about vtkOverlappingAMR: since all meta-data necessary for
        defining a valid vtkOverlappingAMR is not encoded in the
        hierarchy, the return vtkOverlappingAMR is not complete (or
        valid) and is missing key meta-data. Calling code must use other
        mechanisms to make the dataset valid.
        """
        return vtkCompositeDataSet

    def GenerateHierarchy(self, input, hierarchy, output, *args, **kwargs): # real signature unknown; NOTE: unreliably restored from __doc__ 
        """
        GenerateHierarchy(input:vtkCompositeDataSet,
            hierarchy:vtkDataAssembly,
            output:vtkPartitionedDataSetCollection=...) -> bool
        C++: static bool GenerateHierarchy(vtkCompositeDataSet *input,
            vtkDataAssembly *hierarchy,
            vtkPartitionedDataSetCollection *output=nullptr)
        
        Populates `hierarchy` with a representation of the hierarchy for
        the given composite dataset `input`. A hierarchy represents the
        input dataset's structure as represented in the dataset itself.
        
        If `output` is non-null, then the input is also converted to a
        `vtkPartitionedDataSetCollection`. The vtkDataAssembly on the
        `output` is updated to be a copy of the hierarchy with correct
        dataset indices so that relationships in the input blocks are
        preserved.
        
        If input is not a `vtkMultiBlockDataSet`,
        `vtkPartitionedDataSetCollection`, or `vtkUniformGridAMR`, then
        there's no hierarchy to represent and hence this function will
        return `false`.
        """
        pass

    def GetDataAssembly(self, name, cd): # real signature unknown; restored from __doc__
        """
        GetDataAssembly(name:str, cd:vtkCompositeDataSet)
            -> vtkDataAssembly
        C++: static vtkSmartPointer<vtkDataAssembly> GetDataAssembly(
            const char *name, vtkCompositeDataSet *cd)
        
        Convenience method to get a named vtkDataAssembly from a
        vtkCompositeDataSet, if available. May return nullptr if none
        exists or possible.
        """
        return vtkDataAssembly

    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 GetSelectedCompositeIds(self, selectors, *args, **kwargs): # real signature unknown; NOTE: unreliably restored from __doc__ 
        """
        GetSelectedCompositeIds(selectors:(str, ...),
            hierarchyOrAssembly:vtkDataAssembly,
            data:vtkPartitionedDataSetCollection=...,
            leaf_nodes_only:bool=False) -> (int, ...)
        C++: static std::vector<unsigned int> GetSelectedCompositeIds(
            const std::vector<std::string> &selectors,
            vtkDataAssembly *hierarchyOrAssembly,
            vtkPartitionedDataSetCollection *data=nullptr,
            bool leaf_nodes_only=false)
        
        Given a vtkDataAssembly and collection of selectors, returns a
        list of selected composite indices for the selected nodes. The
        vtkDataAssembly can represent either a hierarchy or simply be an
        assembly. For the later, an associated
        `vtkPartitionedDataSetCollection` must be provided to correctly
        determine the composite index for the selected nodes. When an
        hierarchy is used, the hierarchy encodes enough information to
        determine composite ids and hence the `data` argument must be
        nullptr.
        
        `leaf_nodes_only` can be used to indicate if the composite ids
        must only refer to leaf nodes i.e. nodes that cannot have
        additional child nodes.
        """
        pass

    def GetSelectorForCompositeId(self, id, hierarchy): # real signature unknown; restored from __doc__
        """
        GetSelectorForCompositeId(id:int, hierarchy:vtkDataAssembly)
            -> str
        C++: static std::string GetSelectorForCompositeId(unsigned int id,
             vtkDataAssembly *hierarchy)
        
        For a vtkDataAssembly representing an hierarchy, returns the
        selector for the given composite id. Note, the selectors maybe
        best-match. When dealing with vtkPartitionedDataSetCollection,
        for example, a composite id may point to a particular dataset in
        a nested vtkPartitionedDataSet, however, selectors are simply not
        expressive enough to pick a dataset at that level and hence will
        simply point to the parent vtkPartitionedDataSet.
        """
        return ""

    def GetSelectorsForCompositeIds(self, ids, *args, **kwargs): # real signature unknown; NOTE: unreliably restored from __doc__ 
        """
        GetSelectorsForCompositeIds(ids:(int, ...),
            hierarchy:vtkDataAssembly) -> (str, ...)
        C++: static std::vector<std::string> GetSelectorsForCompositeIds(
            const std::vector<unsigned int> &ids,
            vtkDataAssembly *hierarchy)
        """
        pass

    def HierarchyName(self): # real signature unknown; restored from __doc__
        """
        HierarchyName() -> str
        C++: static const char *HierarchyName()
        
        Returns the named used by VTK to correspond to a vtkDataAssembly
        associated with the structure of a composite dataset.
        """
        return ""

    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) -> vtkDataAssemblyUtilities
        C++: vtkDataAssemblyUtilities *NewInstance()
        """
        return vtkDataAssemblyUtilities

    def SafeDownCast(self, o): # real signature unknown; restored from __doc__
        """
        SafeDownCast(o:vtkObjectBase) -> vtkDataAssemblyUtilities
        C++: static vtkDataAssemblyUtilities *SafeDownCast(
            vtkObjectBase *o)
        """
        return vtkDataAssemblyUtilities

    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__': 'vtkDataAssemblyUtilities', 'IsTypeOf': <method 'IsTypeOf' of 'vtkmodules.vtkCommonDataModel.vtkDataAssemblyUtilities' objects>, 'IsA': <method 'IsA' of 'vtkmodules.vtkCommonDataModel.vtkDataAssemblyUtilities' objects>, 'SafeDownCast': <method 'SafeDownCast' of 'vtkmodules.vtkCommonDataModel.vtkDataAssemblyUtilities' objects>, 'NewInstance': <method 'NewInstance' of 'vtkmodules.vtkCommonDataModel.vtkDataAssemblyUtilities' objects>, 'GetNumberOfGenerationsFromBaseType': <method 'GetNumberOfGenerationsFromBaseType' of 'vtkmodules.vtkCommonDataModel.vtkDataAssemblyUtilities' objects>, 'GetNumberOfGenerationsFromBase': <method 'GetNumberOfGenerationsFromBase' of 'vtkmodules.vtkCommonDataModel.vtkDataAssemblyUtilities' objects>, 'HierarchyName': <method 'HierarchyName' of 'vtkmodules.vtkCommonDataModel.vtkDataAssemblyUtilities' objects>, 'GetDataAssembly': <method 'GetDataAssembly' of 'vtkmodules.vtkCommonDataModel.vtkDataAssemblyUtilities' objects>, 'GenerateHierarchy': <method 'GenerateHierarchy' of 'vtkmodules.vtkCommonDataModel.vtkDataAssemblyUtilities' objects>, 'GenerateCompositeDataSetFromHierarchy': <method 'GenerateCompositeDataSetFromHierarchy' of 'vtkmodules.vtkCommonDataModel.vtkDataAssemblyUtilities' objects>, 'GetSelectedCompositeIds': <method 'GetSelectedCompositeIds' of 'vtkmodules.vtkCommonDataModel.vtkDataAssemblyUtilities' objects>, 'GetSelectorForCompositeId': <method 'GetSelectorForCompositeId' of 'vtkmodules.vtkCommonDataModel.vtkDataAssemblyUtilities' objects>, 'GetSelectorsForCompositeIds': <method 'GetSelectorsForCompositeIds' of 'vtkmodules.vtkCommonDataModel.vtkDataAssemblyUtilities' objects>, '__new__': <built-in method __new__ of type object at 0x00007FF81D619B80>, '__repr__': <slot wrapper '__repr__' of 'vtkmodules.vtkCommonDataModel.vtkDataAssemblyUtilities' objects>, '__str__': <slot wrapper '__str__' of 'vtkmodules.vtkCommonDataModel.vtkDataAssemblyUtilities' objects>, '__getattribute__': <slot wrapper '__getattribute__' of 'vtkmodules.vtkCommonDataModel.vtkDataAssemblyUtilities' objects>, '__setattr__': <slot wrapper '__setattr__' of 'vtkmodules.vtkCommonDataModel.vtkDataAssemblyUtilities' objects>, '__delattr__': <slot wrapper '__delattr__' of 'vtkmodules.vtkCommonDataModel.vtkDataAssemblyUtilities' objects>, '__dict__': <attribute '__dict__' of 'vtkmodules.vtkCommonDataModel.vtkDataAssemblyUtilities' objects>, '__this__': <attribute '__this__' of 'vtkmodules.vtkCommonDataModel.vtkDataAssemblyUtilities' objects>, '__doc__': 'vtkDataAssemblyUtilities - collections of utilities for\\nvtkDataAssembly\\n\\nSuperclass: vtkObject\\n\\nvtkDataAssemblyUtilities provides useful utilities for working with\\nvtkDataAssembly.\\n\\n'})"
    __vtkname__ = 'vtkDataAssemblyUtilities'


