The wire type (at the moment) always depends on the source parameter,
not the target parameter.
I can explain how it works, or I can just be lazy, paste the code and
let you work it out for yourself :)
Public Shared Sub SpecialWireType(ByVal target As
Kernel.Data.IEH_Structure, _
<Out()> ByRef p_type As
EH_ConnectionType, _
<Out()> ByRef b_empty As Boolean)
If (target Is Nothing) OrElse (target.IsEmpty) Then
p_type = EH_ConnectionType.Static_Item
b_empty = True
Return
End If
If (target.PathCount > 1) Then
p_type = EH_ConnectionType.Static_Tree
b_empty = True
For i As Int32 = 0 To target.PathCount - 1
If (target.Branch(i).Count > 0) Then
b_empty = False
Return
End If
Next
Return
End If
If (target.Branch(0).Count = 0) Then
p_type = EH_ConnectionType.Static_Item
b_empty = True
Return
End If
If (target.Branch(0).Count = 1) Then
p_type = EH_ConnectionType.Static_Item
b_empty = False
Return
End If
p_type = EH_ConnectionType.Static_List
End Sub
--
David Rutten
[email protected]
Robert McNeel & Associates