// 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. #pragma once #include "hal/simulation/RoboRioData.h" #include "hal/simulation/SimDataValue.h" namespace hal { class RoboRioData { HAL_SIMDATAVALUE_DEFINE_NAME(FPGAButton) HAL_SIMDATAVALUE_DEFINE_NAME(VInVoltage) HAL_SIMDATAVALUE_DEFINE_NAME(VInCurrent) HAL_SIMDATAVALUE_DEFINE_NAME(UserVoltage6V) HAL_SIMDATAVALUE_DEFINE_NAME(UserCurrent6V) HAL_SIMDATAVALUE_DEFINE_NAME(UserActive6V) HAL_SIMDATAVALUE_DEFINE_NAME(UserVoltage5V) HAL_SIMDATAVALUE_DEFINE_NAME(UserCurrent5V) HAL_SIMDATAVALUE_DEFINE_NAME(UserActive5V) HAL_SIMDATAVALUE_DEFINE_NAME(UserVoltage3V3) HAL_SIMDATAVALUE_DEFINE_NAME(UserCurrent3V3) HAL_SIMDATAVALUE_DEFINE_NAME(UserActive3V3) HAL_SIMDATAVALUE_DEFINE_NAME(UserFaults6V) HAL_SIMDATAVALUE_DEFINE_NAME(UserFaults5V) HAL_SIMDATAVALUE_DEFINE_NAME(UserFaults3V3) HAL_SIMDATAVALUE_DEFINE_NAME(BrownoutVoltage) public: SimDataValue fpgaButton{false}; SimDataValue vInVoltage{12.0}; SimDataValue vInCurrent{0.0}; SimDataValue userVoltage6V{6.0}; SimDataValue userCurrent6V{0.0}; SimDataValue userActive6V{ true}; SimDataValue userVoltage5V{5.0}; SimDataValue userCurrent5V{0.0}; SimDataValue userActive5V{ true}; SimDataValue userVoltage3V3{ 3.3}; SimDataValue userCurrent3V3{ 0.0}; SimDataValue userActive3V3{ true}; SimDataValue userFaults6V{0}; SimDataValue userFaults5V{0}; SimDataValue userFaults3V3{0}; SimDataValue brownoutVoltage{ 6.75}; virtual void ResetData(); }; extern RoboRioData* SimRoboRioData; } // namespace hal