2.2.2.5 RDPGFX_SURFACE_TO_SURFACE_PDU

The RDPGFX_SURFACE_TO_SURFACE_PDU message is used to instruct the client to copy bitmap data from a source surface to a destination surface or to replicate bitmap data within the same surface.


0


1


2


3


4


5


6


7


8


9

1
0


1


2


3


4


5


6


7


8


9

2
0


1


2


3


4


5


6


7


8


9

3
0


1

header

...

surfaceIdSrc

surfaceIdDest

rectSrc

...

destPtsCount

destPts (variable)

...

...

header (8 bytes):  An RDPGFX_HEADER (section 2.2.1.5) structure. The cmdId field MUST be set to RDPGFX_CMDID_SURFACETOSURFACE (0x0005), while the flags field MUST be set to zero.

surfaceIdSrc (2 bytes):  A 16-bit unsigned integer that specifies the ID of the surface containing the source bitmap.

surfaceIdDest (2 bytes):  A 16-bit unsigned integer that specifies the ID of the destination surface.

rectSrc (8 bytes):  An RDPGFX_RECT16 (section 2.2.1.2) structure that specifies the rectangle that bounds the source bitmap.

destPtsCount (2 bytes):  A 16-bit unsigned integer that specifies the number of RDPGFX_POINT16 (section 2.2.1.1) structures in the destPts field.

destPts (variable):  A variable-length array of RDPGFX_POINT16 structures that specifies target points on the destination surface to which to copy the source bitmap. The number of structures in this array is specified by the destPtsCount field.