Mercurial > hg > Applications > TreeVNC
view src/main/java/jp/ac/u_ryukyu/treevnc/UpdateRectangleMessage.java @ 176:fa6cfb85444e
on going ...
author | Shinji KONO <kono@ie.u-ryukyu.ac.jp> |
---|---|
date | Sun, 22 Jun 2014 15:08:45 +0900 |
parents | 8ab1f6905db4 |
children | b7247e31b5ba |
line wrap: on
line source
package jp.ac.u_ryukyu.treevnc; import java.nio.ByteBuffer; import java.nio.ByteOrder; import com.glavsoft.rfb.encoding.EncodingType; public class UpdateRectangleMessage { private ByteBuffer msg; public UpdateRectangleMessage(int i, int j, int width, int height, EncodingType desktopSize) { msg = ByteBuffer.allocate(16).order(ByteOrder.BIG_ENDIAN); msg.put((byte) 0); // FrameBufferUpdate msg.put((byte) 0); // padding msg.putShort((short) 1); // number of rectangle msg.putShort((short) i); msg.putShort((short) j); msg.putShort((short) width); msg.putShort((short) height); msg.putInt(desktopSize.getId()); msg.flip(); } public UpdateRectangleMessage(int width, int height, EncodingType desktopSize, byte[] initData, short id) { msg = ByteBuffer.allocate(16+4+initData.length).order(ByteOrder.BIG_ENDIAN); msg.put((byte) 0); // FrameBufferUpdate msg.put((byte) 0); // padding msg.putShort((short) 1); // number of rectangle msg.putShort((short) id); msg.putShort((short) 0); msg.putShort((short) width); msg.putShort((short) height); msg.putInt(desktopSize.getId()); msg.putInt(initData.length); msg.put(initData); msg.flip(); } public ByteBuffer getMessage(){ return msg; } }