Ejemplo n.º 1
0
        public int GetMidiProgramName(VstMidiProgramName midiProgramName, int channel)
        {
            if (_commands != null)
            {
                return(_commands.GetMidiProgramName(midiProgramName, channel));
            }

            return(0);
        }
Ejemplo n.º 2
0
        public void Test_MaxLength_VstMidiProgramName_Name()
        {
            VstMidiProgramName mpn = new VstMidiProgramName();

            Assert.AreEqual(null, mpn.Name);

            mpn.Name = String.Empty;
            Assert.AreEqual(String.Empty, mpn.Name);

            string testData = CreateString(Constants.MaxMidiNameLength);

            mpn.Name = testData;
            Assert.AreEqual(testData, mpn.Name);

            testData += "X";
            mpn.Name  = testData;
            Assert.Fail("should have thrown an exception.");
        }
Ejemplo n.º 3
0
        public void Test_MaxLength_VstMidiProgramName_Name()
        {
            var mpn = new VstMidiProgramName();

            mpn.Name.Should().BeEmpty();

            mpn.Name = String.Empty;
            mpn.Name.Should().BeEmpty();

            string testData = CreateString(Constants.MaxMidiNameLength);

            mpn.Name = testData;
            mpn.Name.Should().Be(testData);

            testData += "X";
            mpn.Name  = testData;
            Assert.Fail("should have thrown an exception.");
        }
Ejemplo n.º 4
0
 /// <summary>
 /// This call is forwarded to the <see cref="Jacobi.Vst.Core.Plugin.IVstPluginCommandStub"/> implementation.
 /// </summary>
 /// <param name="midiProgram">Passed with the forwarded call.</param>
 /// <param name="channel">Passed with the forwarded call.</param>
 /// <returns>Returns the value returned from the forwarded call.</returns>
 public int GetCurrentMidiProgramName(VstMidiProgramName midiProgram, int channel)
 {
     return(_pluginCmdStub.GetCurrentMidiProgramName(midiProgram, channel));
 }
Ejemplo n.º 5
0
        public override int GetCurrentMidiProgramName(VstMidiProgramName midiProgram, int channel)
        {
            LogMethod(MethodBase.GetCurrentMethod());

            return(base.GetCurrentMidiProgramName(midiProgram, channel));
        }
Ejemplo n.º 6
0
 public int GetCurrentMidiProgramName(VstMidiProgramName midiProgram, int channel)
 {
     throw new NotImplementedException();
 }
Ejemplo n.º 7
0
 public int GetMidiProgramName(VstMidiProgramName midiProgram, int channel)
 {
     return(_pluginCtx.PluginCommandStub.GetMidiProgramName(midiProgram, channel));
 }
        /// <summary>
        /// Retrieves information about a midi program for a specific Midi <paramref name="channel"/>.
        /// </summary>
        /// <param name="midiProgramName">Must not be null.</param>
        /// <param name="channel">The zero-based Midi channel.</param>
        /// <returns>Returns the number of implemented Midi programs.</returns>
        public virtual int GetMidiProgramName(VstMidiProgramName midiProgramName, int channel)
        {
            IVstPluginMidiPrograms midiPrograms = pluginCtx.Plugin.GetInstance<IVstPluginMidiPrograms>();

            if (midiPrograms != null)
            {
                VstMidiChannelInfo channelInfo = midiPrograms.ChannelInfos[channel];
                VstMidiProgram program = channelInfo.Programs[midiProgramName.CurrentProgramIndex];
                midiProgramName.Name = program.Name;
                midiProgramName.MidiProgram = program.ProgramChange;
                midiProgramName.MidiBankMSB = program.BankSelectMsb;
                midiProgramName.MidiBankLSB = program.BankSelectLsb;

                if (program.Category != null)
                    midiProgramName.ParentCategoryIndex = channelInfo.Categories.IndexOf(program.Category);
                else
                    midiProgramName.ParentCategoryIndex = -1;

                return channelInfo.Programs.Count;
            }

            return 0;
        }
        /// <summary>
        /// Retrieves information about the current midi program for a specific Midi <paramref name="channel"/>.
        /// </summary>
        /// <param name="midiProgramName">Must not be null.</param>
        /// <param name="channel">The zero-based Midi channel.</param>
        /// <returns>Returns the number of implemented Midi programs.</returns>
        public virtual int GetCurrentMidiProgramName(VstMidiProgramName midiProgramName, int channel)
        {
            IVstPluginMidiPrograms midiPrograms = pluginCtx.Plugin.GetInstance<IVstPluginMidiPrograms>();

            if (midiPrograms != null)
            {
                VstMidiChannelInfo channelInfo = midiPrograms.ChannelInfos[channel];

                if (channelInfo.ActiveProgram != null)
                {
                    midiProgramName.CurrentProgramIndex = channelInfo.Programs.IndexOf(channelInfo.ActiveProgram);
                    midiProgramName.Name = channelInfo.ActiveProgram.Name;
                    midiProgramName.MidiProgram = channelInfo.ActiveProgram.ProgramChange;
                    midiProgramName.MidiBankMSB = channelInfo.ActiveProgram.BankSelectMsb;
                    midiProgramName.MidiBankLSB = channelInfo.ActiveProgram.BankSelectLsb;
                    midiProgramName.ParentCategoryIndex = channelInfo.ActiveProgram.Category != null ? channelInfo.Categories.IndexOf(channelInfo.ActiveProgram.Category) : -1;
                }
                else
                {
                    midiProgramName.CurrentProgramIndex = -1;
                    midiProgramName.MidiProgram = (byte)0xFF;
                    midiProgramName.MidiBankMSB = (byte)0xFF;
                    midiProgramName.MidiBankLSB = (byte)0xFF;
                    midiProgramName.ParentCategoryIndex = -1;
                }

                return channelInfo.Programs.Count;
            }

            return 0;
        }
 public int GetMidiProgramName(VstMidiProgramName midiProgram, int channel)
 {
     return 0;
 }
Ejemplo n.º 11
0
 /// <inheritdoc />
 public int GetCurrentMidiProgramName(VstMidiProgramName midiProgram, int channel)
 {
     Log("GetCurrentMidiProgramName: " + channel);
     return(0);
 }