RLPark 1.0.0
Reinforcement Learning Framework in Java

AlignmentNode.java

Go to the documentation of this file.
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 }
 All Classes Namespaces Files Functions Variables Enumerations
Zephyr
RLPark