Class EmptyControl

java.lang.Object
com.ctre.phoenix6.controls.EmptyControl
All Implemented Interfaces:
ControlRequest, Cloneable

public final class EmptyControl extends Object implements ControlRequest, Cloneable
Generic Empty Control class used to do nothing.
  • Constructor Details

    • EmptyControl

      public EmptyControl()
      Constructs an empty control request.
  • Method Details

    • getName

      public String getName()
      Gets the name of this control request.
      Specified by:
      getName in interface ControlRequest
      Returns:
      Name of the control request
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • sendRequest

      public StatusCode sendRequest(CANBus network, int deviceHash)
      Description copied from interface: ControlRequest
      Sends the control request to the device. Users should call setControl() on the device instead.
      Specified by:
      sendRequest in interface ControlRequest
      Parameters:
      network - Device network
      deviceHash - Device hash
      Returns:
      Status code of sending the request
    • getControlInfo

      public Map<String,String> getControlInfo()
      Gets information about this control request.
      Specified by:
      getControlInfo in interface ControlRequest
      Returns:
      Map of control parameter names and corresponding applied values
    • withUpdateFreqHz

      public EmptyControl withUpdateFreqHz(double newUpdateFreqHz)
      Description copied from interface: ControlRequest
      Sets the frequency at which this control will update. This is designated in Hertz, with a minimum of 20 Hz (every 50 ms) and a maximum of 1000 Hz (every 1 ms). Some update frequencies are not supported and will be promoted up to the next highest supported frequency.

      If this field is set to 0 Hz, the control request will be sent immediately as a one-shot frame. This may be useful for advanced applications that require outputs to be synchronized with data acquisition. In this case, we recommend not exceeding 50 ms between control calls.

      Specified by:
      withUpdateFreqHz in interface ControlRequest
      Parameters:
      newUpdateFreqHz - Parameter to modify
      Returns:
      Itself
    • withUpdateFreqHz

      public EmptyControl withUpdateFreqHz(Frequency newUpdateFreqHz)
      Description copied from interface: ControlRequest
      Sets the frequency at which this control will update. This is designated in Hertz, with a minimum of 20 Hz (every 50 ms) and a maximum of 1000 Hz (every 1 ms). Some update frequencies are not supported and will be promoted up to the next highest supported frequency.

      If this field is set to 0 Hz, the control request will be sent immediately as a one-shot frame. This may be useful for advanced applications that require outputs to be synchronized with data acquisition. In this case, we recommend not exceeding 50 ms between control calls.

      Specified by:
      withUpdateFreqHz in interface ControlRequest
      Parameters:
      newUpdateFreqHz - Parameter to modify
      Returns:
      Itself
    • clone

      public EmptyControl clone()
      Overrides:
      clone in class Object