Exemple #1
0
 /// <summary>
 ///     Create midi message
 /// </summary>
 /// <param name="portID">port id</param>
 /// <param name="type">midi message type</param>
 /// <param name="channel">midi channel</param>
 /// <param name="value">14 bit data value</param>
 public OscMidiMessage(
     byte portID,
     OscMidiMessageType type,
     byte channel,
     ushort value)
     : this(portID, type, channel, (byte)(value & 0x7F), (byte)((value & 0x3F80) >> 7))
 {
 }
Exemple #2
0
 /// <summary>
 ///     Create midi message
 /// </summary>
 /// <param name="portID">port id</param>
 /// <param name="type">midi message type</param>
 /// <param name="channel">midi channel</param>
 /// <param name="data1">data 1</param>
 public OscMidiMessage(
     byte portID,
     OscMidiMessageType type,
     byte channel,
     byte data1)
     : this(portID, type, channel, data1, 0)
 {
 }
Exemple #3
0
        /// <summary>
        /// Create midi message
        /// </summary>
        /// <param name="portID">the id of the destination port</param>
        /// <param name="type">the type of message</param>
        /// <param name="channel">the channel</param>
        /// <param name="data1">data argument 1</param>
        /// <param name="data2">data argument 2</param>
        public OscMidiMessage(byte portID, OscMidiMessageType type, byte channel, byte data1, byte data2)
        {
            if (channel >= 16)
            {
                throw new ArgumentOutOfRangeException("channel");
            }

            FullMessage = 0;

            PortID     = portID;
            StatusByte = (byte)((int)type | (int)channel);
            Data1      = (byte)(data1 & 0x7F);
            Data2      = (byte)(data2 & 0x7F);
        }
        public void OscMidiMessageConstructorTest()
        {
            OscMidiMessage expected = new OscMidiMessage(0x03962200);

            byte portID             = 3;
            OscMidiMessageType type = OscMidiMessageType.NoteOn;
            byte           channel  = 6;
            byte           data1    = 34;
            OscMidiMessage target   = new OscMidiMessage(portID, type, channel, data1);

            Assert.Equal(expected, target);
            Assert.Equal(target.PortID, portID);
            Assert.Equal(target.Channel, channel);
            Assert.Equal(target.MessageType, type);
            Assert.Equal(target.Data1, data1);
            Assert.Equal(target.Data2, 0);
        }