コード例 #1
0
ファイル: ByteQueue.java プロジェクト: kkjslee/modbus4j
  public void push(ByteQueue source) {
    if (source.size == 0) return;

    if (source == this) source = (ByteQueue) clone();

    int firstCopyLen = source.queue.length - source.head;
    if (source.size < firstCopyLen) firstCopyLen = source.size;
    push(source.queue, source.head, firstCopyLen);

    if (firstCopyLen < source.size) push(source.queue, 0, source.tail);
  }
コード例 #2
0
ファイル: ByteQueue.java プロジェクト: kkjslee/modbus4j
 public void push(String hex) {
   if (hex.length() % 2 != 0)
     throw new IllegalArgumentException("Hex string must have an even number of characters");
   byte[] b = new byte[hex.length() / 2];
   for (int i = 0; i < b.length; i++)
     b[i] = (byte) Integer.parseInt(hex.substring(i * 2, i * 2 + 2), 16);
   push(b, 0, b.length);
 }
コード例 #3
0
ファイル: ByteQueue.java プロジェクト: kkjslee/modbus4j
 public void pushLong(long l) {
   push((byte) (l >> 56));
   push((byte) (l >> 48));
   push((byte) (l >> 40));
   push((byte) (l >> 32));
   push((byte) (l >> 24));
   push((byte) (l >> 16));
   push((byte) (l >> 8));
   push((byte) l);
 }
コード例 #4
0
ファイル: ByteQueue.java プロジェクト: kkjslee/modbus4j
 /** Push unsigned 2 bytes. */
 public void pushU2B(int i) {
   push((byte) (i >> 8));
   push((byte) i);
 }
コード例 #5
0
ファイル: ByteQueue.java プロジェクト: kkjslee/modbus4j
 public void push(long l) {
   push((byte) l);
 }
コード例 #6
0
ファイル: ByteQueue.java プロジェクト: kkjslee/modbus4j
 public void push(int i) {
   push((byte) i);
 }
コード例 #7
0
ファイル: ByteQueue.java プロジェクト: kkjslee/modbus4j
 public ByteQueue(String hex) {
   this(hex.length() / 2);
   push(hex);
 }
コード例 #8
0
ファイル: ByteQueue.java プロジェクト: kkjslee/modbus4j
 public ByteQueue(byte[] b, int pos, int length) {
   this(length);
   push(b, pos, length);
 }
コード例 #9
0
ファイル: ByteQueue.java プロジェクト: kkjslee/modbus4j
 public ByteQueue(byte[] b) {
   this(b.length);
   push(b, 0, b.length);
 }
コード例 #10
0
ファイル: ByteQueue.java プロジェクト: kkjslee/modbus4j
 public void push(ByteQueue source, int len) {
   // TODO There is certainly a more elegant way to do this...
   while (len-- > 0) push(source.pop());
 }
コード例 #11
0
ファイル: ByteQueue.java プロジェクト: kkjslee/modbus4j
 public void push(byte[] b) {
   push(b, 0, b.length);
 }
コード例 #12
0
ファイル: ByteQueue.java プロジェクト: kkjslee/modbus4j
 public void pushShort(short s) {
   push((byte) (s >> 8));
   push((byte) s);
 }
コード例 #13
0
ファイル: ByteQueue.java プロジェクト: kkjslee/modbus4j
 public void pushInt(int i) {
   push((byte) (i >> 24));
   push((byte) (i >> 16));
   push((byte) (i >> 8));
   push((byte) i);
 }
コード例 #14
0
ファイル: ByteQueue.java プロジェクト: kkjslee/modbus4j
 public void pushChar(char c) {
   push((byte) (c >> 8));
   push((byte) c);
 }
コード例 #15
0
ファイル: ByteQueue.java プロジェクト: kkjslee/modbus4j
 /** Push unsigned 4 bytes. */
 public void pushU4B(long l) {
   push((byte) (l >> 24));
   push((byte) (l >> 16));
   push((byte) (l >> 8));
   push((byte) l);
 }