VixenModules.SequenceType.Vixen2x.Vixen2xSequenceImporterForm.addEvent C# (CSharp) Method

addEvent() private method

private addEvent ( patternType pattern, int chan, int startPos, int startValue, int endPos, int endValue ) : void
pattern patternType
chan int
startPos int
startValue int
endPos int
endValue int
return void
        private void addEvent(patternType pattern, int chan, int startPos, int startValue, int endPos, int endValue = 0)
        {
            //System.Diagnostics.Debug.Print("Pattern: {0}, SPos (Val): {1}({2}), EPos (Val): {3}({4}), Chan: {5}", pattern, startPos, startValue, endPos, endValue, chan);
            ElementNode targetNode = mappings[chan].ElementNode;

            if (targetNode != null) {
                EffectNode node = null;
                switch (pattern) {
                    case patternType.SetLevelTrend:
                    case patternType.SingleSetLevel:
                        node = GenerateSetLevelEffect(startValue, startPos, endPos, targetNode);
                        break;
                    case patternType.PulseFadeTrend:
                    case patternType.PulseRampTrend:
                        node = GeneratePulseEffect(startValue, endValue, startPos, endPos, targetNode);
                        break;
                }
                if (node != null) {
                    Sequence.InsertData(node);
                }
            }
            markEventsProcessed(chan * parsedV2Sequence.EventsPerElement + startPos, chan * parsedV2Sequence.EventsPerElement + endPos);
        }