Package edu.wpi.first.wpilibj.simulation
Class SimDeviceSim
- java.lang.Object
-
- edu.wpi.first.wpilibj.simulation.SimDeviceSim
-
public class SimDeviceSim extends Object
Class to control the simulation side of a SimDevice.
-
-
Constructor Summary
Constructors Constructor Description SimDeviceSim(String name)
Constructs a SimDeviceSim.SimDeviceSim(String name, int index)
Constructs a SimDeviceSim.SimDeviceSim(String name, int index, int channel)
Constructs a SimDeviceSim.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static SimDeviceDataJNI.SimDeviceInfo[]
enumerateDevices(String prefix)
Get all sim devices with the given prefix.SimDeviceDataJNI.SimValueInfo[]
enumerateValues()
Get all data of this object.SimBoolean
getBoolean(String name)
Get the property object with the given name.SimDouble
getDouble(String name)
Get the property object with the given name.SimEnum
getEnum(String name)
Get the property object with the given name.static String[]
getEnumOptions(SimEnum val)
Get all options for the given enum.SimInt
getInt(String name)
Get the property object with the given name.SimLong
getLong(String name)
Get the property object with the given name.int
getNativeHandle()
Get the native handle of this object.SimValue
getValue(String name)
Get the property object with the given name.static CallbackStore
registerDeviceCreatedCallback(String prefix, SimDeviceCallback callback, boolean initialNotify)
Register a callback to be run every time a newSimDevice
is created.static CallbackStore
registerDeviceFreedCallback(String prefix, SimDeviceCallback callback, boolean initialNotify)
Register a callback to be run every time aSimDevice
is freed/destroyed.CallbackStore
registerValueChangedCallback(SimValue value, SimValueCallback callback, boolean initialNotify)
Register a callback to be run every time a value is changed on this device.CallbackStore
registerValueCreatedCallback(SimValueCallback callback, boolean initialNotify)
Register a callback to be run every time a new value is added to this device.CallbackStore
registerValueResetCallback(SimValue value, SimValueCallback callback, boolean initialNotify)
Register a callback for SimDouble.reset() and similar functions.static void
resetData()
Reset all SimDevice data.
-
-
-
Constructor Detail
-
SimDeviceSim
public SimDeviceSim(String name)
Constructs a SimDeviceSim.- Parameters:
name
- name of the SimDevice
-
SimDeviceSim
public SimDeviceSim(String name, int index)
Constructs a SimDeviceSim.- Parameters:
name
- name of the SimDeviceindex
- device index number to append to name
-
SimDeviceSim
public SimDeviceSim(String name, int index, int channel)
Constructs a SimDeviceSim.- Parameters:
name
- name of the SimDeviceindex
- device index number to append to namechannel
- device channel number to append to name
-
-
Method Detail
-
getValue
public SimValue getValue(String name)
Get the property object with the given name.- Parameters:
name
- the property name- Returns:
- the property object
-
getInt
public SimInt getInt(String name)
Get the property object with the given name.- Parameters:
name
- the property name- Returns:
- the property object
-
getLong
public SimLong getLong(String name)
Get the property object with the given name.- Parameters:
name
- the property name- Returns:
- the property object
-
getDouble
public SimDouble getDouble(String name)
Get the property object with the given name.- Parameters:
name
- the property name- Returns:
- the property object
-
getEnum
public SimEnum getEnum(String name)
Get the property object with the given name.- Parameters:
name
- the property name- Returns:
- the property object
-
getBoolean
public SimBoolean getBoolean(String name)
Get the property object with the given name.- Parameters:
name
- the property name- Returns:
- the property object
-
getEnumOptions
public static String[] getEnumOptions(SimEnum val)
Get all options for the given enum.- Parameters:
val
- the enum- Returns:
- names of the different values for that enum
-
enumerateValues
public SimDeviceDataJNI.SimValueInfo[] enumerateValues()
Get all data of this object.- Returns:
- all data and fields of this object
-
getNativeHandle
public int getNativeHandle()
Get the native handle of this object.- Returns:
- the handle used to refer to this object through JNI
-
registerValueCreatedCallback
public CallbackStore registerValueCreatedCallback(SimValueCallback callback, boolean initialNotify)
Register a callback to be run every time a new value is added to this device.- Parameters:
callback
- the callbackinitialNotify
- should the callback be run with the initial state- Returns:
- the
CallbackStore
object associated with this callback. Save a reference to this object so GC doesn't cancel the callback.
-
registerValueChangedCallback
public CallbackStore registerValueChangedCallback(SimValue value, SimValueCallback callback, boolean initialNotify)
Register a callback to be run every time a value is changed on this device.- Parameters:
value
- simulated valuecallback
- the callbackinitialNotify
- should the callback be run with the initial state- Returns:
- the
CallbackStore
object associated with this callback. Save a reference to this object so GC doesn't cancel the callback.
-
registerValueResetCallback
public CallbackStore registerValueResetCallback(SimValue value, SimValueCallback callback, boolean initialNotify)
Register a callback for SimDouble.reset() and similar functions. The callback is called with the old value.- Parameters:
value
- simulated valuecallback
- callbackinitialNotify
- ignored (present for consistency)- Returns:
- the
CallbackStore
object associated with this callback. Save a reference to this object so GC doesn't cancel the callback.
-
enumerateDevices
public static SimDeviceDataJNI.SimDeviceInfo[] enumerateDevices(String prefix)
Get all sim devices with the given prefix.- Parameters:
prefix
- the prefix to filter sim devices- Returns:
- all sim devices
-
registerDeviceCreatedCallback
public static CallbackStore registerDeviceCreatedCallback(String prefix, SimDeviceCallback callback, boolean initialNotify)
Register a callback to be run every time a newSimDevice
is created.- Parameters:
prefix
- the prefix to filter sim devicescallback
- the callbackinitialNotify
- should the callback be run with the initial state- Returns:
- the
CallbackStore
object associated with this callback. Save a reference to this object so GC doesn't cancel the callback.
-
registerDeviceFreedCallback
public static CallbackStore registerDeviceFreedCallback(String prefix, SimDeviceCallback callback, boolean initialNotify)
Register a callback to be run every time aSimDevice
is freed/destroyed.- Parameters:
prefix
- the prefix to filter sim devicescallback
- the callbackinitialNotify
- should the callback be run with the initial state- Returns:
- the
CallbackStore
object associated with this callback. Save a reference to this object so GC doesn't cancel the callback.
-
resetData
public static void resetData()
Reset all SimDevice data.
-
-