protected override void DisposeInstance(AudioSignal instance) { //remove pin relation foreach (var param in AudioSignal.GetParams(instance)) { if (param.IsOutput) { FOutputPinToParamMap.Remove(param); } else { FInputPinToParamMap.Remove(param); } } base.DisposeInstance(instance); }
protected override TSignal GetInstance(int i) { var instance = new TSignal(); //assign pin relation foreach (var param in AudioSignal.GetParams(instance)) { if (param.IsOutput) { FOutputPinToParamMap[param] = FOutputPins[param.Name]; } else { FInputPinToParamMap[param] = FInputPins[param.Name]; } } return(instance); }