Exemple #1
0
        public override IEnumerator ReceivePayload(VisualPayload payload)
        {
            var groupId = GroupId.GetFirstValue(payload.Data);

            if (!WaitingTransmissions.ContainsKey(groupId))
            {
                WaitingTransmissions[groupId] = new List <SequencedRepeatPair>();
            }

            WaitingTransmissions[groupId].Add(ProduceTransmissionFunc(payload));

            var iterator = BeginSequenceState.Transmit(payload);

            while (iterator.MoveNext())
            {
                yield return(null);
            }

            //start sequence
            UnwaitGroupId(groupId);
        }
Exemple #2
0
 protected override void OnProcessOutputSchema(MutableObject newSchema)
 {
     BeginSequenceState.TransmitSchema(newSchema);
     EndSequenceState.TransmitSchema(newSchema);
     ProcessPerStepSchema(newSchema);
 }