#NEWLINE# def nodeOutputType( self , dagNode , output ) : #NEWLINE# #INDENT# '\n        Nodes can output different inherited data packet types based on their inputs\n        and parameters.  This function reports exactly which data packet type is coming\n        out of a given node.\n        ' #NEWLINE# if ( len ( output . allPossibleOutputTypes ( ) ) == 1 ) : #NEWLINE# #INDENT# return output . dataPacketType #NEWLINE# #UNINDENT# input = dagNode . inputAffectingOutput ( output ) #NEWLINE# if ( not input ) : #NEWLINE# #INDENT# return output . dataPacketType #NEWLINE# #UNINDENT# ( inputNode , inputNodeOutput ) = self . nodeInputComesFromNode ( dagNode , input ) #NEWLINE# if ( not inputNodeOutput ) : #NEWLINE# #INDENT# return output . dataPacketType #NEWLINE# #UNINDENT# return self . nodeOutputType ( inputNode , inputNodeOutput )