Example #1
0
 public FxGranularDelayViewModel(SettingsMemoryFxModel model)
     : base("Granular Delay", model)
 {
     GranularDelayTime     = new PropertyIntViewModel(nameof(model.GranularDelayTime), PropertySet);
     GranularDelayFeedback = new PropertyIntViewModel(nameof(model.GranularDelayFeedback), PropertySet);
     GranularDelayLevel    = new PropertyIntViewModel(nameof(model.GranularDelayLevel), PropertySet);
 }
 public FxReverbViewModel(SettingsMemoryFxModel model)
     : base("Reverb", model)
 {
     ReverbTime     = new PropertyFloatViewModel(nameof(model.ReverbTime), PropertySet, new FloatTimeConverter());
     ReverbLevel    = new PropertyIntViewModel(nameof(model.ReverbLevel), PropertySet);
     ReverbDryLevel = new PropertyIntViewModel(nameof(model.ReverbDryLevel), PropertySet);
 }
Example #3
0
 public FxChorusViewModel(SettingsMemoryFxModel model)
     : base("Chorus", model)
 {
     ChorusRate  = new PropertyMixedViewModel <FxRate>(nameof(model.ChorusRate), PropertySet, new EnumNoteConverter <FxRate>());
     ChorusDepth = new PropertyIntViewModel(nameof(model.ChorusDepth), PropertySet);
     ChorusLevel = new PropertyIntViewModel(nameof(model.ChorusLevel), PropertySet);
 }
Example #4
0
 public FxTremoloViewModel(SettingsMemoryFxModel model)
     : base("Tremolo", model)
 {
     TremoloRate  = new PropertyMixedViewModel <FxRate>(nameof(model.TremoloRate), PropertySet, new EnumNoteConverter <FxRate>());
     TremoloDepth = new PropertyIntViewModel(nameof(model.TremoloDepth), PropertySet);
     TremoloLevel = new PropertyIntViewModel(nameof(model.TremoloLevel), PropertySet);
 }
 public FxVocalDistViewModel(SettingsMemoryFxModel model)
     : base("Vocal Dist", model)
 {
     VocalDistDistortion = new PropertyIntViewModel(nameof(model.VocalDistDistortion), PropertySet);
     VocalDistTone       = new PropertyIntViewModel(nameof(model.VocalDistTone), PropertySet, new IntToneConverter());
     VocalDistLevel      = new PropertyIntViewModel(nameof(model.VocalDistLevel), PropertySet);
 }
 public FxPanningDelayViewModel(SettingsMemoryFxModel model)
     : base("Panning Delay", model)
 {
     PanningDelayTime     = new PropertyMixedViewModel <FxDelayTime>(nameof(model.PanningDelayTime), PropertySet, new EnumNoteConverter <FxDelayTime>());
     PanningDelayFeedback = new PropertyIntViewModel(nameof(model.PanningDelayFeedback), PropertySet);
     PanningDelayLevel    = new PropertyIntViewModel(nameof(model.PanningDelayLevel), PropertySet);
 }
Example #7
0
 public FxSlowGearViewModel(SettingsMemoryFxModel model)
     : base("Slow Gear", model)
 {
     SlowGearSensitivity = new PropertyIntViewModel(nameof(model.SlowGearSensitivity), PropertySet);
     SlowGearRiseTime    = new PropertyIntViewModel(nameof(model.SlowGearRiseTime), PropertySet);
     SlowGearLevel       = new PropertyIntViewModel(nameof(model.SlowGearLevel), PropertySet);
 }
 public FxSlicerViewModel(SettingsMemoryFxModel model)
     : base("Slicer", model)
 {
     SlicerPattern = new PropertyEnumComboViewModel <FxSlicerPattern>(nameof(model.SlicerPattern), PropertySet);
     SlicerRate    = new PropertyMixedViewModel <FxRate>(nameof(model.SlicerRate), PropertySet, new EnumNoteConverter <FxRate>());
     SlicerDepth   = new PropertyIntViewModel(nameof(model.SlicerDepth), PropertySet);
 }
 public FxLoFiViewModel(SettingsMemoryFxModel model)
     : base("Lo-Fi", model)
 {
     LoFiDepth      = new PropertyIntViewModel(nameof(model.LoFiDepth), PropertySet);
     LoFiSampleRate = new PropertyIntViewModel(nameof(model.LoFiSampleRate), PropertySet);
     LoFiBalance    = new PropertyIntViewModel(nameof(model.LoFiBalance), PropertySet);
 }
 public FxTapeEchoViewModel(SettingsMemoryFxModel model)
     : base("Tape Echo", model)
 {
     TapeEchoRate      = new PropertyIntViewModel(nameof(model.TapeEchoRate), PropertySet);
     TapeEchoIntensity = new PropertyIntViewModel(nameof(model.TapeEchoIntensity), PropertySet);
     TapeEchoLevel     = new PropertyIntViewModel(nameof(model.TapeEchoLevel), PropertySet);
 }
Example #11
0
        public SettingsMemoryFxViewModel(FxType type, FxSlot slot, SettingsMemoryFxModel model)
            : base(model)
        {
            Type = type;
            Slot = slot;

            Filter        = new FxFilterViewModel(model);
            Phaser        = new FxPhaserViewModel(model);
            Flanger       = new FxFlangerViewModel(model);
            Synth         = new FxSynthViewModel(model);
            LoFi          = new FxLoFiViewModel(model);
            RingModulator = new FxRingModulatorViewModel(model);
            GuitarToBass  = new FxGuitarToBassViewModel(model);
            SlowGear      = new FxSlowGearViewModel(model);
            Transpose     = new FxTransposeViewModel(model);
            PitchBend     = new FxPitchBendViewModel(model);
            Robot         = new FxRobotViewModel(model);
            VocalDist     = new FxVocalDistViewModel(model);
            Dynamics      = new FxDynamicsViewModel(model);
            Eq            = new FxEqViewModel(model);
            Isolator      = new FxIsolatorViewModel(model);
            Octave        = new FxOctaveViewModel(model);
            Pan           = new FxPanViewModel(model);
            Tremolo       = new FxTremoloViewModel(model);
            Slicer        = new FxSlicerViewModel(model);
            Delay         = new FxDelayViewModel(model);
            PanningDelay  = new FxPanningDelayViewModel(model);
            TapeEcho      = new FxTapeEchoViewModel(model);
            GranularDelay = new FxGranularDelayViewModel(model);
            Roll          = new FxRollViewModel(model);
            Chorus        = new FxChorusViewModel(model);
            Reverb        = new FxReverbViewModel(model);
        }
Example #12
0
 public FxVocoderViewModel(SettingsMemoryFxModel model)
     : base("Vocoder", model)
 {
     VocoderCarrier = new PropertyEnumComboViewModel <Track>(nameof(model.VocoderCarrier), PropertySet);
     VocoderModSens = new PropertyIntViewModel(nameof(model.VocoderModSens), PropertySet);
     VocoderAttack  = new PropertyIntViewModel(nameof(model.VocoderAttack), PropertySet);
     VocoderBalance = new PropertyIntViewModel(nameof(model.VocoderBalance), PropertySet);
 }
Example #13
0
 public FxSynthViewModel(SettingsMemoryFxModel model)
     : base("Synth", model)
 {
     SynthFrequency = new PropertyIntViewModel(nameof(model.SynthFrequency), PropertySet);
     SynthResonance = new PropertyIntViewModel(nameof(model.SynthResonance), PropertySet);
     SynthDecay     = new PropertyIntViewModel(nameof(model.SynthDecay), PropertySet);
     SynthBalance   = new PropertyIntViewModel(nameof(model.SynthBalance), PropertySet);
 }
 public FxRollViewModel(SettingsMemoryFxModel model)
     : base("Roll", model)
 {
     RollTime     = new PropertyMixedViewModel <FxDelayTime>(nameof(model.RollTime), PropertySet, new EnumNoteConverter <FxDelayTime>());
     RollMode     = new PropertyEnumComboViewModel <FxRollMode>(nameof(model.RollMode), PropertySet, new EnumTimeSignatureConverter <FxRollMode>());
     RollFeedback = new PropertyIntViewModel(nameof(model.RollFeedback), PropertySet);
     RollLevel    = new PropertyIntViewModel(nameof(model.RollLevel), PropertySet);
 }
 public FxPanViewModel(SettingsMemoryFxModel model)
     : base("Pan", model)
 {
     PanType     = new PropertyEnumRadioViewModel <FxPanType>(nameof(model.PanType), PropertySet);
     PanRate     = new PropertyMixedViewModel <FxRate>(nameof(model.PanRate), PropertySet, new EnumNoteConverter <FxRate>());
     PanDepth    = new PropertyIntViewModel(nameof(model.PanDepth), PropertySet);
     PanStepRate = new PropertyMixedViewModel <FxStepRate>(nameof(model.PanStepRate), PropertySet, new IntStepRateConverter(), new EnumNoteConverter <FxStepRate>());
     PanPosition = new PropertyIntViewModel(nameof(model.PanPosition), PropertySet, new IntPanConverter());
 }
Example #16
0
 public FxIsolatorViewModel(SettingsMemoryFxModel model)
     : base("Isolator", model)
 {
     IsolatorBand     = new PropertyEnumRadioViewModel <FxIsolatorBand>(nameof(model.IsolatorBand), PropertySet);
     IsolatorRate     = new PropertyMixedViewModel <FxRate>(nameof(model.IsolatorRate), PropertySet, new EnumNoteConverter <FxRate>());
     IsolatorDepth    = new PropertyIntViewModel(nameof(model.IsolatorDepth), PropertySet);
     IsolatorStepRate = new PropertyMixedViewModel <FxStepRate>(nameof(model.IsolatorStepRate), PropertySet, new IntStepRateConverter(), new EnumNoteConverter <FxStepRate>());
     IsolatorLevel    = new PropertyIntViewModel(nameof(model.IsolatorLevel), PropertySet);
 }
Example #17
0
 public FxEqViewModel(SettingsMemoryFxModel model)
     : base("EQ", model)
 {
     EqLow     = new PropertyIntViewModel(nameof(model.EqLow), PropertySet, new IntDbConverter());
     EqLowMid  = new PropertyIntViewModel(nameof(model.EqLowMid), PropertySet, new IntDbConverter());
     EqHighMid = new PropertyIntViewModel(nameof(model.EqHighMid), PropertySet, new IntDbConverter());
     EqHigh    = new PropertyIntViewModel(nameof(model.EqHigh), PropertySet, new IntDbConverter());
     EqLevel   = new PropertyIntViewModel(nameof(model.EqLevel), PropertySet, new IntDbConverter());
 }
 public FxPhaserViewModel(SettingsMemoryFxModel model)
     : base("Phaser", model)
 {
     PhaserRate      = new PropertyMixedViewModel <FxRate>(nameof(model.PhaserRate), PropertySet, new EnumNoteConverter <FxRate>());
     PhaserDepth     = new PropertyIntViewModel(nameof(model.PhaserDepth), PropertySet);
     PhaserResonance = new PropertyIntViewModel(nameof(model.PhaserResonance), PropertySet);
     PhaserStepRate  = new PropertyMixedViewModel <FxStepRate>(nameof(model.PhaserStepRate), PropertySet, new IntStepRateConverter(), new EnumNoteConverter <FxStepRate>());
     PhaserLevel     = new PropertyIntViewModel(nameof(model.PhaserLevel), PropertySet);
 }
 public FxFilterViewModel(SettingsMemoryFxModel model)
     : base("Filter", model)
 {
     FilterType      = new PropertyEnumRadioViewModel <FxFilterType>(nameof(model.FilterType), PropertySet);
     FilterRate      = new PropertyMixedViewModel <FxRate>(nameof(model.FilterRate), PropertySet, new EnumNoteConverter <FxRate>());
     FilterDepth     = new PropertyIntViewModel(nameof(model.FilterDepth), PropertySet);
     FilterResonance = new PropertyIntViewModel(nameof(model.FilterResonance), PropertySet);
     FilterCutoff    = new PropertyIntViewModel(nameof(model.FilterCutoff), PropertySet);
     FilterStepRate  = new PropertyMixedViewModel <FxStepRate>(nameof(model.FilterStepRate), PropertySet, new IntStepRateConverter(), new EnumNoteConverter <FxStepRate>());
 }
Example #20
0
        public SettingsMemoryFxTrackViewModel(FxSlot slot, SettingsMemoryFxModel model, SettingsMemoryBeatFxModel beatFxModel)
            : base(FxType.TRACK, slot, model)
        {
            BeatRepeat  = new FxBeatRepeatViewModel(beatFxModel);
            BeatShift   = new FxBeatShiftViewModel(beatFxModel);
            BeatScatter = new FxBeatScatterViewModel(beatFxModel);
            VinylFlick  = new FxVinylFlickViewModel(beatFxModel);

            SetFxList();
        }
Example #21
0
        public SystemModel() : base()
        {
            Setup       = new SettingsSystemSetupModel();
            InputOutput = new SettingsSystemInputOutputModel();
            USB         = new SettingsSystemUSBModel();
            MIDI        = new SettingsSystemMIDIModel();

            #region DefaultMemory
            Track1 = new SettingsMemoryTrackModel();
            Track2 = new SettingsMemoryTrackModel();
            Track3 = new SettingsMemoryTrackModel();
            Track4 = new SettingsMemoryTrackModel();
            Track5 = new SettingsMemoryTrackModel();

            Rhythm     = new SettingsMemoryRhythmModel();
            Name       = new SettingsMemoryNameModel();
            Master     = new SettingsMemoryMasterModel();
            RecOption  = new SettingsMemoryRecOptionModel();
            PlayOption = new SettingsMemoryPlayOptionModel();

            Assign1  = new SettingsMemoryAssignModel();
            Assign2  = new SettingsMemoryAssignModel();
            Assign3  = new SettingsMemoryAssignModel();
            Assign4  = new SettingsMemoryAssignModel();
            Assign5  = new SettingsMemoryAssignModel();
            Assign6  = new SettingsMemoryAssignModel();
            Assign7  = new SettingsMemoryAssignModel();
            Assign8  = new SettingsMemoryAssignModel();
            Assign9  = new SettingsMemoryAssignModel();
            Assign10 = new SettingsMemoryAssignModel();
            Assign11 = new SettingsMemoryAssignModel();
            Assign12 = new SettingsMemoryAssignModel();
            Assign13 = new SettingsMemoryAssignModel();
            Assign14 = new SettingsMemoryAssignModel();
            Assign15 = new SettingsMemoryAssignModel();
            Assign16 = new SettingsMemoryAssignModel();

            InputFx = new SettingsMemoryInputFxModel();
            TrackFx = new SettingsMemoryTrackFxModel();

            BeatFxA = new SettingsMemoryBeatFxModel();
            BeatFxB = new SettingsMemoryBeatFxModel();
            BeatFxC = new SettingsMemoryBeatFxModel();

            InputFxA = new SettingsMemoryFxModel();
            InputFxB = new SettingsMemoryFxModel();
            InputFxC = new SettingsMemoryFxModel();

            TrackFxA = new SettingsMemoryFxModel();
            TrackFxB = new SettingsMemoryFxModel();
            TrackFxC = new SettingsMemoryFxModel();
            #endregion DefaultMemory
        }
Example #22
0
        public override void ApplyChanges <T>(T model)
        {
            if (model is MemoryModel memory)
            {
                SettingsMemoryFxModel     fx     = memory.TrackFxA;
                SettingsMemoryBeatFxModel beatFx = memory.BeatFxA;

                switch (Slot)
                {
                case FxSlot.A:
                    fx     = memory.TrackFxA;
                    beatFx = memory.BeatFxA;
                    break;

                case FxSlot.B:
                    fx     = memory.TrackFxB;
                    beatFx = memory.BeatFxB;
                    break;

                case FxSlot.C:
                    fx     = memory.TrackFxC;
                    beatFx = memory.BeatFxC;
                    break;
                }

                base.ApplyChanges(fx);

                BeatRepeat.ApplyChanges(beatFx);
                BeatShift.ApplyChanges(beatFx);
                BeatScatter.ApplyChanges(beatFx);
                VinylFlick.ApplyChanges(beatFx);
            }
            else
            {
                throw new ArgumentException("Model must be of type MemoryModel.");
            }
        }
 public FxGuitarToBassViewModel(SettingsMemoryFxModel model)
     : base("Guitar To Bass", model)
 {
     GuitarToBassBalance = new PropertyIntViewModel(nameof(model.GuitarToBassBalance), PropertySet);
 }
 public FxDynamicsViewModel(SettingsMemoryFxModel model)
     : base("Dynamics", model)
 {
     DynamicsType     = new PropertyEnumComboViewModel <FxDynamicsType>(nameof(model.DynamicsType), PropertySet);
     DynamicsDynamics = new PropertyIntViewModel(nameof(model.DynamicsDynamics), PropertySet, new IntDbConverter());
 }
 public FxTransposeViewModel(SettingsMemoryFxModel model)
     : base("Transpose", model)
 {
     TransposeSemitones = new PropertyIntViewModel(nameof(model.TransposeSemitones), PropertySet, new IntSemitonesConverter());
 }
 public FxRingModulatorViewModel(SettingsMemoryFxModel model)
     : base("Ring Modulator", model)
 {
     RingModulatorFrequency = new PropertyIntViewModel(nameof(model.RingModulatorFrequency), PropertySet);
     RingModulatorBalance   = new PropertyIntViewModel(nameof(model.RingModulatorBalance), PropertySet);
 }
Example #27
0
 public FxPitchBendViewModel(SettingsMemoryFxModel model)
     : base("Pitch Bend", model)
 {
     PitchBendOctave = new PropertyIntViewModel(nameof(model.PitchBendOctave), PropertySet, new IntOctaveConverter());
     PitchBendBend   = new PropertyIntViewModel(nameof(model.PitchBendBend), PropertySet);
 }
Example #28
0
 public SettingsMemoryFxInputViewModel(FxSlot slot, SettingsMemoryFxModel model)
     : base(FxType.INPUT, slot, model)
 {
     SetFxList();
 }
Example #29
0
 public FxOctaveViewModel(SettingsMemoryFxModel model)
     : base("Octave", model)
 {
     OctaveMode  = new PropertyEnumRadioViewModel <FxOctaveMode>(nameof(model.OctaveMode), PropertySet, new EnumOctaveModeConverter());
     OctaveLevel = new PropertyIntViewModel(nameof(model.OctaveLevel), PropertySet);
 }
 public FxRobotViewModel(SettingsMemoryFxModel model)
     : base("Robot", model)
 {
     RobotNote   = new PropertyEnumComboViewModel <FxRobotNote>(nameof(model.RobotNote), PropertySet);
     RobotGender = new PropertyIntViewModel(nameof(model.RobotGender), PropertySet, new IntGenderConverter());
 }