public InputDeclaration(SimpleType type, int patchOffset, InputPortID portNumber, bool isArray) { Type = type; PatchOffset = patchOffset; PortNumber = portNumber; IsArray = isArray; }
/// <summary> /// Overload of <see cref="NodeMemoryInput{TTag,TBufferToMove}(NodeHandle, InputPortID)"/> /// targeting a port array with an index parameter. /// </summary> public NodeMemoryInput(NodeHandle node, InputPortID portArray, int arrayIndex) { Node = node; InternalPort = new InputPortArrayID(portArray, arrayIndex); ResolvedDestination = default; WasCreatedStrongly = false; }
internal InputPortArrayID(InputPortID portId, int arrayIndex) { if ((uint)arrayIndex >= NonArraySentinel) { throw new InvalidOperationException("Invalid array index."); } PortID = portId; m_ArrayIndex = (ushort)arrayIndex; }
public int FindInputDataPortNumber(InputPortID port) { for (int p = 0; p < Inputs.Count; ++p) { if (Inputs[p].PortNumber == port) { return(p); } } throw new InternalException("Matching input port not found"); }
internal DataInput(void *ptr, InputPortID port) { Ptr = ptr; Port = port; }
internal InputPortArrayID(InputPortID portId) { PortID = portId; m_ArrayIndex = NonArraySentinel; }
public ref /*readonly */ InputDeclaration FindInputDataPort(InputPortID port) => ref Inputs[FindInputDataPortNumber(port)];
public static Unchecked Input(InputPortID originPortID, NodeHandle replacement, InputPortID replacedPortID) { return(new Unchecked(true, originPortID.Port, replacement, replacedPortID.Storage)); }
PortArray(void *ptr, ushort size, InputPortID port) { Ptr = ptr; Size = size; Port = port; }
void CommonChecks <TDefinition>(NodeHandle replacedNode, InputPortID originPort) where TDefinition : NodeDefinition { CommonChecks <TDefinition>(replacedNode, true, originPort.Storage.DFGPortIndex); }
public void Disconnect(NodeSet set, NodeHandle source, OutputPortID sourcePort, NodeHandle destination, InputPortID destinationPort) { var srcNodeFunc = set.GetDefinition(source); var destNodeFunc = set.GetDefinition(destination); var srcNodeDSL = set.GetDefinition(source) as TDSLInterface; var destNodeDSL = set.GetDefinition(destination) as TDSLInterface; if (srcNodeDSL == null || destNodeDSL == null) { throw new InvalidCastException(); } Disconnect( new ConnectionInfo { Handle = source, Interface = srcNodeDSL, DSLPortIndex = GetDSLPortIndex( sourcePort, srcNodeFunc.GetPortDescription(source).Outputs.Cast <PortDescription.IPort <OutputPortID> >() ) }, new ConnectionInfo { Handle = destination, Interface = destNodeDSL, DSLPortIndex = GetDSLPortIndex( destinationPort, destNodeFunc.GetPortDescription(destination).Inputs.Cast <PortDescription.IPort <InputPortID> >() ) }); }