/// <summary> /// Funkcja wykonujaca konkadenacje sygnałów /// </summary> private static AnalogSignal operatorConcadenation(AnalogSignal firstSignal, AnalogSignal secondSignal) { AnalogSignal concadenateOfSignals = new AnalogSignal(firstSignal, secondSignal); double[] course; concadenateOfSignals.lengthOfBuffer = firstSignal.LengthOfBuffer + secondSignal.LengthOfBuffer; course = new double[concadenateOfSignals.LengthOfBuffer]; for (int time = 0; time < firstSignal.LengthOfBuffer; time++) { course[time] = firstSignal.Course[time]; // Sprawdzenie maksymalnej amplitudy i przypisanie jej do parametru if (course[time] > concadenateOfSignals.Amplitude) { concadenateOfSignals.Amplitude = course[time]; } } for (int time = firstSignal.LengthOfBuffer; time < concadenateOfSignals.LengthOfBuffer; time++) { course[time] = secondSignal.Course[time - firstSignal.LengthOfBuffer]; // Sprawdzenie maksymalnej amplitudy i przypisanie jej do parametru if (course[time] > concadenateOfSignals.Amplitude) { concadenateOfSignals.Amplitude = course[time]; } } concadenateOfSignals.SetCourse(course); return(concadenateOfSignals); }
/// <summary> /// Funkcja wykonujaca mnozenie sygnalow /// </summary> private static AnalogSignal operatorMultiplication(AnalogSignal firstSignal, AnalogSignal secondSignal) { AnalogSignal productOfSignals = new AnalogSignal(firstSignal, secondSignal); double[] course; course = new double[productOfSignals.LengthOfBuffer]; for (int time = 0; time < productOfSignals.LengthOfBuffer; time++) { course[time] = firstSignal.Course[time] * secondSignal.Course[time]; // Sprawdzenie maksymalnej amplitudy i przypisanie jej do parametru if (course[time] > productOfSignals.Amplitude) { productOfSignals.Amplitude = course[time]; } } productOfSignals.SetCourse(course); return(productOfSignals); }
/// <summary> /// Funkcja realizujaca dodawanie sygnalow /// </summary> /// <param name="firstSignal">Pierwszy sygnal.</param> /// <param name="secondSignal">Drugi sygnal.</param> private static AnalogSignal operatorAddition(AnalogSignal firstSignal, AnalogSignal secondSignal) { double[] course; AnalogSignal sumOfSignals = new AnalogSignal(firstSignal, secondSignal); course = new double[sumOfSignals.LengthOfBuffer]; for (int time = 0; time < sumOfSignals.LengthOfBuffer; time++) { course[time] = firstSignal.Course[time] + secondSignal.Course[time]; // Sprawdzenie maksymalnej amplitudy i przypisanie jej do parametru if (course[time] > sumOfSignals.Amplitude) { sumOfSignals.Amplitude = course[time]; } } sumOfSignals.SetCourse(course); return(sumOfSignals); }