001/*----------------------------------------------------------------------------*/ 002/* Copyright (c) FIRST 2016-2017. All Rights Reserved. */ 003/* Open Source Software - may be modified and shared by FRC teams. The code */ 004/* must be accompanied by the FIRST BSD license file in the root directory of */ 005/* the project. */ 006/*----------------------------------------------------------------------------*/ 007 008package edu.wpi.first.wpilibj.hal; 009 010import java.nio.ByteBuffer; 011 012public class OSSerialPortJNI extends JNIWrapper { 013 public static native void serialInitializePort(byte port); 014 015 public static native void serialSetBaudRate(byte port, int baud); 016 017 public static native void serialSetDataBits(byte port, byte bits); 018 019 public static native void serialSetParity(byte port, byte parity); 020 021 public static native void serialSetStopBits(byte port, byte stopBits); 022 023 public static native void serialSetWriteMode(byte port, byte mode); 024 025 public static native void serialSetFlowControl(byte port, byte flow); 026 027 public static native void serialSetTimeout(byte port, double timeout); 028 029 public static native void serialEnableTermination(byte port, char terminator); 030 031 public static native void serialDisableTermination(byte port); 032 033 public static native void serialSetReadBufferSize(byte port, int size); 034 035 public static native void serialSetWriteBufferSize(byte port, int size); 036 037 public static native int serialGetBytesRecieved(byte port); 038 039 public static native int serialRead(byte port, ByteBuffer buffer, int count); 040 041 public static native int serialWrite(byte port, ByteBuffer buffer, int count); 042 043 public static native void serialFlush(byte port); 044 045 public static native void serialClear(byte port); 046 047 public static native void serialClose(byte port); 048}