RLPark 1.0.0
Reinforcement Learning Framework in Java
|
00001 package rlpark.plugin.irobot.internal.descriptors; 00002 00003 import rlpark.plugin.robot.internal.disco.drops.DropByteArray; 00004 00005 public class AlignmentNode implements SerialLinkNode { 00006 private final byte[] alignment; 00007 private int byteRead = 0; 00008 private final byte[] read; 00009 00010 public AlignmentNode(int... header) { 00011 this(DropByteArray.toBytes(header)); 00012 } 00013 00014 public AlignmentNode(byte[] alignment) { 00015 this.alignment = alignment; 00016 read = new byte[alignment.length]; 00017 } 00018 00019 @Override 00020 public void start() { 00021 byteRead = 0; 00022 } 00023 00024 @Override 00025 public void step(Byte b) { 00026 read[byteRead] = b; 00027 byteRead++; 00028 } 00029 00030 @Override 00031 public boolean isDone() { 00032 return byteRead == alignment.length; 00033 } 00034 00035 @Override 00036 public int sum() { 00037 return ChecksumNode.sum(read); 00038 } 00039 }