Files
allwpilib/wpilibc/src/generate/main/native/include/frc/simulation/hidsim.h.jinja

99 lines
2.9 KiB
Django/Jinja

// Copyright (c) FIRST and other WPILib contributors.
// Open Source Software; you can modify and/or share it under the terms of
// the WPILib BSD license file in the root directory of this project.
// THIS FILE WAS AUTO-GENERATED BY ./wpilibc/generate_hids.py. DO NOT MODIFY
{% macro capitalize_first(string) -%}
{{ string[0]|capitalize + string[1:] }}
{%- endmacro %}
#pragma once
#include "frc/simulation/GenericHIDSim.h"
namespace frc {
class {{ ConsoleName }}Controller;
namespace sim {
/**
* Class to control a simulated {{ ConsoleName }} controller.
*/
class {{ ConsoleName }}ControllerSim : public GenericHIDSim {
public:
/**
* Constructs from a {{ ConsoleName }}Controller object.
*
* @param joystick controller to simulate
*/
explicit {{ ConsoleName }}ControllerSim(const {{ ConsoleName }}Controller& joystick);
/**
* Constructs from a joystick port number.
*
* @param port port number
*/
explicit {{ ConsoleName }}ControllerSim(int port);
{% for stick in sticks %}
/**
* Change the {{ stick.NameParts|join(" ") }} value of the controller's joystick.
*
* @param value the new value
*/
void Set{{ stick.NameParts|map("capitalize")|join }}(double value);
{% endfor -%}
{% for trigger in triggers %}
/**
* Change the value of the {{ trigger.DocName }} axis on the controller.
*
* @param value the new value
*/
void Set{{ capitalize_first(trigger.name) }}Axis(double value);
{% endfor -%}
{% for button in buttons %}
/**
* Change the value of the {{ button.DocName|default(button.name) }} button on the controller.
*
* @param value the new value
*/
void Set{{ capitalize_first(button.name) }}Button(bool value);
{% endfor -%}
{% if ConsoleName == "Xbox" %}
/**
* Change the left bumper value of the joystick.
*
* @param value the new value
* @deprecated Use SetLeftBumperButton instead. This function is deprecated
* for removal to make function names consistent to allow the HID classes to
* be automatically generated.
*/
[[deprecated("Use SetLeftBumperButton instead")]]
void SetLeftBumper(bool value);
/**
* Change the right bumper value of the joystick.
*
* @param value the new value
* @deprecated Use SetRightBumperButton instead. This function is deprecated
* for removal to make function names consistent to allow the HID classes to
* be automatically generated.
*/
[[deprecated("Use SetRightBumperButton instead")]]
void SetRightBumper(bool value);
{% elif ConsoleName == "PS4" or ConsoleName == "PS5" %}
/**
* Change the value of the touchpad button on the controller.
*
* @param value the new value
* @deprecated Use SetTouchpadButton instead. This function is deprecated for
* removal to make function names consistent to allow the HID classes to be
* automatically generated.
*/
[[deprecated("Use SetTouchpadButton instead")]]
void SetTouchpad(bool value);
{% endif %}
};
} // namespace sim
} // namespace frc