4.1 MAPPED_GEOMETRY_PACKET – GEOMETRY_UPDATE – Simple Geometry

This example shows geometry that expresses a simple rectangle of size 480x244 pixels. The raw packet data is as follows:

 78000000 01000000 22020400 BA7A0080 01000000 00000000 E2010300 00000000
 10000000 8A000000 F0010000 7E010000 23010000 72000000 78040000 CA020000
 02000000 30000000 20000000 01000000 01000000 00000000 00000000 00000000
 E0010000 F4000000 00000000 00000000 E0010000 F4000000 00

MAPPED_GEOMETRY_PACKET:

  • UINT32 cbGeometryData – 78000000

  • 0x00000078 = 120 (bytes)

  • UINT32 Version – 01000000

  • 0x00000001 = 1

  • UINT64 MappingId - 22020400 BA7A0080

  • 0x80007ABA00040222

  • UINT32 UpdateType – 01000000

  • 0x00000001 = 1 (GEOMETRY_UPDATE)

  • UINT32 Flags – 00000000

  • 0x00000000 = 0

  • UINT64 TopLevelId - E2010300 00000000

  • 0x00000000’000301E2

  • INT32 Left – 10000000

  • 0x00000010 = 16

  • INT32 Top – 8A000000

  • 0x0000008A = 138

  • INT32 Right – F0010000

  • 0x000001F0 = 496

  • INT32 Bottom – 7E010000

  • 0x0000017E = 382

  • INT32 TopLevelLeft – 23010000

  • 0x00000123 = 291

  • INT32 TopLevelTop – 71000000

  • 0x00000071 = 114

  • INT32 TopLevelRight – 78040000

  • 0x00000478 = 1144

  • INT32 TopLevelBottom – CA010000

  • 0x000001CA = 714

  • UINT32 GeometryType – 02000000

  • 0x00000002 = 2 (GEOMETRY_TYPE_REGION)

  • UINT32 cbGeometryBuffer – 30000000

  • 0x00000030 = 48 (bytes)

  • BYTE pGeometryBuffer[48] – (Cast to RGNDATA)

UINT8 Reserved - 00