"""
This type stub file was generated by pyright.
"""

from .vtkDefaultPass import vtkDefaultPass

class vtkLightingMapPass(vtkDefaultPass):
    """
    vtkLightingMapPass - TO DO
    
    Superclass: vtkDefaultPass
    
    Renders lighting information directly instead of final shaded colors.
    The information keys allow the selection of either normal rendering
    or luminance. For normals, the (nx, ny, nz) tuple are rendered
    directly into the (r,g,b) fragment. For luminance, the diffuse and
    specular intensities are rendered into the red and green channels,
    respectively. The blue channel is zero. For both luminances and
    normals, the alpha channel is set to 1.0 if present.
    
    @sa
    vtkRenderPass vtkDefaultPass
    """
    def GetNumberOfGenerationsFromBase(self, string):
        """
        V.GetNumberOfGenerationsFromBase(string) -> int
        C++: vtkIdType GetNumberOfGenerationsFromBase(const char *type)
            override;
        
        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.
        """
        ...
    
    def GetNumberOfGenerationsFromBaseType(self, string):
        """
        V.GetNumberOfGenerationsFromBaseType(string) -> 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.
        """
        ...
    
    def GetRenderType(self):
        """
        V.GetRenderType() -> RenderMode
        C++: virtual RenderMode GetRenderType()
        
        Set the type of lighting render to perform
        """
        ...
    
    def IsA(self, string):
        """
        V.IsA(string) -> 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.
        """
        ...
    
    def IsTypeOf(self, string):
        """
        V.IsTypeOf(string) -> 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.
        """
        ...
    
    def NewInstance(self):
        """
        V.NewInstance() -> vtkLightingMapPass
        C++: vtkLightingMapPass *NewInstance()
        """
        ...
    
    def RENDER_LUMINANCE(self):
        """
        V.RENDER_LUMINANCE() -> vtkInformationIntegerKey
        C++: static vtkInformationIntegerKey *RENDER_LUMINANCE()
        
        If this key exists on the PropertyKeys of a prop, the active
        scalar array on the prop will be rendered as its color. This key
        is mutually exclusive with the RENDER_LUMINANCE key.
        """
        ...
    
    def RENDER_NORMALS(self):
        """
        V.RENDER_NORMALS() -> vtkInformationIntegerKey
        C++: static vtkInformationIntegerKey *RENDER_NORMALS()
        
        if this key exists on the ProperyKeys of a prop, the active
        vector array on the prop will be rendered as its color. This key
        is mutually exclusive with the RENDER_LUMINANCE key.
        """
        ...
    
    def SafeDownCast(self, vtkObjectBase):
        """
        V.SafeDownCast(vtkObjectBase) -> vtkLightingMapPass
        C++: static vtkLightingMapPass *SafeDownCast(vtkObjectBase *o)
        """
        ...
    
    def SetRenderType(self, RenderMode):
        """
        V.SetRenderType(RenderMode)
        C++: virtual void SetRenderType(RenderMode _arg)
        
        Set the type of lighting render to perform
        """
        ...
    
    def __delattr__(self, *args, **kwargs):
        """ Implement delattr(self, name). """
        ...
    
    def __getattribute__(self, *args, **kwargs):
        """ Return getattr(self, name). """
        ...
    
    def __init__(self, *args, **kwargs) -> None:
        ...
    
    @staticmethod
    def __new__(*args, **kwargs):
        """ Create and return a new object.  See help(type) for accurate signature. """
        ...
    
    def __repr__(self, *args, **kwargs):
        """ Return repr(self). """
        ...
    
    def __setattr__(self, *args, **kwargs):
        """ Implement setattr(self, name, value). """
        ...
    
    def __str__(self, *args, **kwargs) -> str:
        """ Return str(self). """
        ...
    
    __this__ = ...
    LUMINANCE = ...
    NORMALS = ...
    RenderMode = ...
    __dict__ = ...
    __vtkname__ = ...


