001/*
002 * Copyright (C) Cross The Road Electronics.  All rights reserved.
003 * License information can be found in CTRE_LICENSE.txt
004 * For support and suggestions contact support@ctr-electronics.com or file
005 * an issue tracker at https://github.com/CrossTheRoadElec/Phoenix-Releases
006 */
007package com.ctre.phoenixpro.jni;
008
009public class StatusSignalValueJNI implements Cloneable {
010    public int deviceHash;
011    public int spn;
012    public double value;
013    public String units;
014    public double hwtimeStampSeconds;
015    public double swtimeStampSeconds;
016    public double ecutimeStampSeconds;
017    public int timeStampType;
018    public int statusCode;
019
020    public native int JNI_RefreshSignal(String network, double timeoutSeconds);
021
022    public native int JNI_WaitForSignal(String network, double timeoutSeconds);
023
024    public static native int JNI_WaitForAll(String network, double timeoutSeconds,
025            StatusSignalValueJNI[] signals);
026
027    public native int JNI_SetUpdateFrequency(String network, double frequencyHz, double timeoutSeconds);
028
029    @Override
030    public StatusSignalValueJNI clone() {
031        var retval = new StatusSignalValueJNI();
032        retval.deviceHash = deviceHash;
033        retval.spn = spn;
034        return retval;
035    }
036}