public void TwoContactsToBytes()
		{
			MultiTouchReport report = new MultiTouchReport(2, true);

			Point point = HidContactInfo.GetPoint(new Point(2,3));
			report.Contacts.Add(CreateContact(HidContactState.Updated, 1, 2, 3, 4, 5));
			report.Contacts.Add(CreateContact(HidContactState.Updated, 2, 2, 3, 4, 5));
			const int expectedPresure = 4 * 5;

			report.ToBytes();

			byte[] data = report.Data;
			BinaryReader reader = new BinaryReader(new MemoryStream(data));
			Assert.AreEqual(3, reader.ReadByte()); //tip, inrange
			Assert.AreEqual(0, reader.ReadByte()); //
			Assert.AreEqual(Convert.ToUInt16(point.X), reader.ReadUInt16()); // x
			Assert.AreEqual(Convert.ToUInt16(point.Y), reader.ReadUInt16()); // y
			Assert.AreEqual(expectedPresure, reader.ReadUInt16()); // pressure
            Assert.AreEqual(4, reader.ReadUInt16()); // width
			Assert.AreEqual(5, reader.ReadUInt16()); // height
			Assert.AreEqual(1, reader.ReadUInt16()); // id

			Assert.AreEqual(3, reader.ReadByte()); //tip, inrange
			Assert.AreEqual(0, reader.ReadByte()); //
			Assert.AreEqual(Convert.ToUInt16(point.X), reader.ReadUInt16()); // x
			Assert.AreEqual(Convert.ToUInt16(point.Y), reader.ReadUInt16()); // y
			Assert.AreEqual(expectedPresure, reader.ReadUInt16()); // pressure
			Assert.AreEqual(4, reader.ReadUInt16()); // width
			Assert.AreEqual(5, reader.ReadUInt16()); // height
			Assert.AreEqual(2, reader.ReadUInt16()); // id

	
			Assert.AreEqual(2, reader.ReadByte());
		}
		private void SendReport(MultiTouchReport report)
		{
			report.ToBytes();
			device.WriteReport(report);
		}
Exemple #3
0
 private void SendReport(MultiTouchReport report)
 {
     report.ToBytes();
     device.WriteReport(report);
 }