annotate src/main/java/jp/ac/u_ryukyu/treevnc/ChangeDesktopSize.java @ 441:cee43ceac9b3

send thatscreen position INIT_DATA
author one
date Thu, 16 Jun 2016 21:08:19 +0900
parents eaf6dbcb42dc
children 614057b86122
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
440
eaf6dbcb42dc fix filename
mir3636
parents:
diff changeset
1 package jp.ac.u_ryukyu.treevnc;
eaf6dbcb42dc fix filename
mir3636
parents:
diff changeset
2
eaf6dbcb42dc fix filename
mir3636
parents:
diff changeset
3 import java.nio.ByteBuffer;
eaf6dbcb42dc fix filename
mir3636
parents:
diff changeset
4 import java.nio.ByteOrder;
eaf6dbcb42dc fix filename
mir3636
parents:
diff changeset
5
eaf6dbcb42dc fix filename
mir3636
parents:
diff changeset
6 import com.glavsoft.rfb.encoding.EncodingType;
eaf6dbcb42dc fix filename
mir3636
parents:
diff changeset
7
eaf6dbcb42dc fix filename
mir3636
parents:
diff changeset
8 public class ChangeDesktopSize {
eaf6dbcb42dc fix filename
mir3636
parents:
diff changeset
9
eaf6dbcb42dc fix filename
mir3636
parents:
diff changeset
10 private ByteBuffer msg;
eaf6dbcb42dc fix filename
mir3636
parents:
diff changeset
11
eaf6dbcb42dc fix filename
mir3636
parents:
diff changeset
12 public ChangeDesktopSize(int width, int height,
441
cee43ceac9b3 send thatscreen position INIT_DATA
one
parents: 440
diff changeset
13 int x, int y, EncodingType desktopSize, byte[] initData, short id) {
440
eaf6dbcb42dc fix filename
mir3636
parents:
diff changeset
14 msg = ByteBuffer.allocate(16+4+initData.length).order(ByteOrder.BIG_ENDIAN);
eaf6dbcb42dc fix filename
mir3636
parents:
diff changeset
15 msg.put((byte) 0); // FrameBufferUpdate
eaf6dbcb42dc fix filename
mir3636
parents:
diff changeset
16 msg.put((byte) 0); // padding
eaf6dbcb42dc fix filename
mir3636
parents:
diff changeset
17 msg.putShort((short) 1); // number of rectangle
441
cee43ceac9b3 send thatscreen position INIT_DATA
one
parents: 440
diff changeset
18 msg.putShort((short) x);
cee43ceac9b3 send thatscreen position INIT_DATA
one
parents: 440
diff changeset
19 msg.putShort((short) y);
440
eaf6dbcb42dc fix filename
mir3636
parents:
diff changeset
20 msg.putShort((short) width);
eaf6dbcb42dc fix filename
mir3636
parents:
diff changeset
21 msg.putShort((short) height);
eaf6dbcb42dc fix filename
mir3636
parents:
diff changeset
22 msg.putInt(desktopSize.getId());
441
cee43ceac9b3 send thatscreen position INIT_DATA
one
parents: 440
diff changeset
23 msg.putInt(initData.length+2);
cee43ceac9b3 send thatscreen position INIT_DATA
one
parents: 440
diff changeset
24 msg.putShort(id);
440
eaf6dbcb42dc fix filename
mir3636
parents:
diff changeset
25 msg.put(initData);
eaf6dbcb42dc fix filename
mir3636
parents:
diff changeset
26 msg.flip();
eaf6dbcb42dc fix filename
mir3636
parents:
diff changeset
27
eaf6dbcb42dc fix filename
mir3636
parents:
diff changeset
28 }
eaf6dbcb42dc fix filename
mir3636
parents:
diff changeset
29
eaf6dbcb42dc fix filename
mir3636
parents:
diff changeset
30 public ByteBuffer getMessage(){
eaf6dbcb42dc fix filename
mir3636
parents:
diff changeset
31 return msg;
eaf6dbcb42dc fix filename
mir3636
parents:
diff changeset
32 }
eaf6dbcb42dc fix filename
mir3636
parents:
diff changeset
33
eaf6dbcb42dc fix filename
mir3636
parents:
diff changeset
34
eaf6dbcb42dc fix filename
mir3636
parents:
diff changeset
35 }