view src/main/java/jp/ac/u_ryukyu/treevnc/UpdateRectangleMessage.java @ 275:0f9b3de45fb2

set main display size.
author oc
date Tue, 06 Jan 2015 19:07:27 +0900
parents 0815ed7f54a7
children
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 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;
    }


}