34 static constexpr int OK = 0;
817 constexpr operator int()
const {
return this->value; }
821 return this->value == data.value;
825 return this->value == data;
829 return this->value != data.value;
833 return this->value != data;
837 return this->value < data.value;
841 return this->value < data;
847 constexpr bool IsError()
const {
return value < 0; }
855 constexpr bool IsOK()
const {
return value ==
OK; }
867 case -100:
return "TaskIsBusy";
868 case -101:
return "InvalidDeviceSpec";
869 case -102:
return "EcuIsNotPresent";
870 case -103:
return "CouldNotEnterBl";
871 case -104:
return "CouldNotConfirmBl";
872 case -105:
return "CouldNotErase";
873 case -106:
return "CouldNotSendFlash";
874 case -107:
return "CouldNotValidate";
875 case -108:
return "CouldNotRunApp";
876 case -109:
return "CouldNotReqSetId";
877 case -110:
return "CouldNotConfirmId";
878 case -111:
return "FlashWasGood";
879 case -112:
return "AppTooOld";
880 case -113:
return "CouldNotReqSetDesc";
881 case -114:
return "CompileSzIsWrong";
882 case -115:
return "GadgeteerDeviceNoSetId";
883 case -116:
return "InvalidTask";
884 case -117:
return "NotImplemented";
885 case -118:
return "NoDevicesOnBus";
886 case -119:
return "MoreThanOneFile";
887 case -120:
return "NodeIsInvalid";
888 case -121:
return "InvalidDeviceDescriptor";
889 case -123:
return "CouldNotSendCanFrame";
890 case -124:
return "NormalModeMsgNotPresent";
891 case -125:
return "FeatureNotSupported";
892 case -126:
return "NotUpdating";
893 case -127:
return "CorruptedPOST";
894 case -128:
return "NoConfigs";
895 case -129:
return "ConfigFailed";
896 case -130:
return "CouldNotReqFactoryDefault";
897 case -131:
return "CustomNameNotSupported";
898 case -132:
return "ConfigReadWriteMismatch";
899 case -133:
return "CouldNotReqSetConfigs";
900 case -134:
return "InsufficientSz";
901 case -135:
return "InvalidModel";
902 case -140:
return "CouldNotReqDevInfo";
903 case -141:
return "NoControls";
904 case -142:
return "DeviceIsNull";
905 case -143:
return "DeviceDidNotRespondToDiagReq";
906 case -144:
return "OnlySupportedInTunerX";
907 case -145:
return "CanivCliError";
908 case -200:
return "InvalidCrfBadHeader";
909 case -201:
return "InvalidCrfFileSzInvald";
910 case -202:
return "InvalidCrfWrongProduct";
911 case -203:
return "InvalidCrfNoSects";
912 case -204:
return "InvalidCrfBadSectHeader";
913 case -205:
return "InvalidCrfBadSectSize";
914 case -206:
return "NoCrfFile";
915 case -300:
return "CouldNotFindDynamicId";
916 case -301:
return "DidNotGetDhcp";
917 case -302:
return "DidNotGetFullDhcp";
918 case -350:
return "InvalidLicenseResp";
919 case -351:
return "InvalidCanivCache";
920 case -500:
return "CannotOpenSerialPort";
921 case -501:
return "CannotWriteSerialPort";
922 case -502:
return "CannotReadSerialPort";
923 case -503:
return "CannotSerialToDevice";
924 case -504:
return "NoSerialControlFrameResp";
925 case -600:
return "CannotOpenUdpPort";
926 case -601:
return "CannotWriteUdpPort";
927 case -602:
return "CannotReadUdpPort";
928 case -603:
return "CannotUdpToDevice";
929 case -604:
return "NoUdpControlFrameResp";
930 case -605:
return "TimeoutIso15Response";
931 case -700:
return "InvalidJson";
932 case -800:
return "AppIsTerminating";
933 case 1000:
return "CanMessageStale";
934 case 1006:
return "BufferFull";
935 case 1010:
return "PulseWidthSensorNotPresent";
936 case 1100:
return "GeneralWarning";
937 case 1103:
return "FirmVersionCouldNotBeRetrieved";
938 case 1104:
return "FeaturesNotAvailableYet";
939 case 1105:
return "ControlModeNotValid";
940 case 1106:
return "ControlModeNotSupportedYet";
941 case 1109:
return "MotProfFirmThreshold";
942 case 1110:
return "MotProfFirmThreshold2";
943 case 1200:
return "SimDeviceNotFound";
944 case 1201:
return "SimPhysicsTypeNotSupported";
945 case 1202:
return "SimDeviceAlreadyExists";
946 case -1001:
return "TxFailed";
947 case -1002:
return "InvalidParamValue";
948 case -1003:
return "RxTimeout";
949 case -1004:
return "TxTimeout";
950 case -1005:
return "UnexpectedArbId";
951 case -1006:
return "CanOverflowed";
952 case -1007:
return "SensorNotPresent";
953 case -1008:
return "FirmwareTooOld";
954 case -1009:
return "CouldNotChangePeriod";
955 case -1010:
return "BufferFailure";
956 case -1011:
return "FirmwareNonFRC";
957 case -1100:
return "GeneralError";
958 case -1200:
return "SigNotUpdated";
959 case -1201:
return "NotAllPIDValuesUpdated";
960 case -1300:
return "GEN_PORT_ERROR";
961 case -1301:
return "PORT_MODULE_TYPE_MISMATCH";
962 case -1400:
return "GEN_MODULE_ERROR";
963 case -1401:
return "MODULE_NOT_INIT_SET_ERROR";
964 case -1402:
return "MODULE_NOT_INIT_GET_ERROR";
965 case -1500:
return "WheelRadiusTooSmall";
966 case -1501:
return "TicksPerRevZero";
967 case -1502:
return "DistanceBetweenWheelsTooSmall";
968 case -1503:
return "GainsAreNotSet";
969 case -1504:
return "WrongRemoteLimitSwitchSource";
970 case -1505:
return "DoubleVoltageCompensatingWPI";
971 case -1506:
return "CANdleAnimSlotOutOfBounds";
972 case -1600:
return "IncompatibleMode";
973 case -1601:
return "InvalidHandle";
974 case -1700:
return "FeatureRequiresHigherFirm";
975 case -1702:
return "ConfigFactoryDefaultRequiresHigherFirm";
976 case -1703:
return "ConfigMotionSCurveRequiresHigherFirm";
977 case -1704:
return "TalonFXFirmwarePreVBatDetect";
978 case -1705:
return "CANdleAnimationsRequireHigherFirm";
979 case -1800:
return "LibraryCouldNotBeLoaded";
980 case -1801:
return "MissingRoutineInLibrary";
981 case -1802:
return "ResourceNotAvailable";
982 case -1900:
return "MusicFileNotFound";
983 case -1901:
return "MusicFileWrongSize";
984 case -1902:
return "MusicFileTooNew";
985 case -1903:
return "MusicFileInvalid";
986 case -1904:
return "InvalidOrchestraAction";
987 case -1905:
return "MusicFileTooOld";
988 case -1906:
return "MusicInterrupted";
989 case -1907:
return "MusicNotSupported";
990 case -2000:
return "kInvalidInterface";
991 case -2001:
return "kInvalidGuid";
992 case -2002:
return "kInvalidClass";
993 case -2003:
return "kInvalidProtocol";
994 case -2004:
return "kInvalidPath";
995 case -2005:
return "kGeneralWinUsbError";
996 case -2006:
return "kFailedSetup";
997 case -2007:
return "kListenFailed";
998 case -2008:
return "kSendFailed";
999 case -2009:
return "kReceiveFailed";
1000 case -2010:
return "kInvalidRespFormat";
1001 case -2011:
return "kWinUsbInitFailed";
1002 case -2012:
return "kWinUsbQueryFailed";
1003 case -2013:
return "kWinUsbGeneralError";
1004 case -2014:
return "kAccessDenied";
1005 case -2015:
return "kFirmwareInvalidResponse";
1006 case -10000:
return "StatusCodeNotInitialized";
1007 case 10000:
return "WarningNotInitialized";
1008 case 10001:
return "HwTimestampOutOfSync";
1009 case -10001:
return "InvalidNetwork";
1010 case -10002:
return "MultiSignalNotSupported";
1011 case -10003:
return "CouldNotCast";
1012 case -10004:
return "NotFound";
1013 case -10005:
return "NotSupported";
1014 case -10006:
return "MissingContext";
1015 case -10007:
return "ModelMismatch";
1016 case -10008:
return "SerialMismatch";
1017 case -10009:
return "NoFile";
1018 case -10010:
return "LicenseDownloadFailed";
1019 case -10011:
return "SelfTestIsEmpty";
1020 case -10012:
return "SignalLookupFailed";
1021 case -10013:
return "InvalidModeToGetSignal";
1022 case -10014:
return "UnlicensedDevice";
1023 case -10015:
return "InvalidSize";
1024 case -10016:
return "InvalidLicenseResponse";
1025 case -10017:
return "InvalidContext";
1026 case -10018:
return "InternalError";
1027 case -10019:
return "kDeviceResponseIncorrect";
1028 case -10020:
return "kErrorPollingForDevices";
1029 case -10021:
return "CouldNotRetrieveV6Firmware";
1030 case -10022:
return "CouldNotDecodeDeviceFirmware";
1031 case -10023:
return "InvalidIDToFollow";
1032 case -10024:
return "UsingProFeatureOnUnlicensedDevice";
1033 case -10025:
return "FirmwareTooNew";
1034 case -10026:
return "CouldNotSerialize";
1035 case -10027:
return "MechanismFaulted";
1036 case -10028:
return "FirmwareVersNotCompatible";
1037 case -10029:
return "DirectoryMissing";
1038 case -10030:
return "ApiTooOld";
1039 case -10031:
return "LoggerNotRunning";
1040 case -10032:
return "TimeoutCannotBeZero";
1041 case -10033:
return "CannotLicenseWhileEnabled";
1042 case -10034:
return "InvalidFile";
1043 case -10035:
return "HootLogTooOld";
1044 case -10036:
return "HootLogTooNew";
1045 case -10037:
return "UnlicensedHootLog";
1046 case -10038:
return "CannotStepWhileUnpaused";
1047 case -10039:
return "MultipleReplayNotSupported";
1048 case -10040:
return "UserSignalLimitExceeded";
1049 case -10041:
return "InvalidDeviceModel";
1053 return "Could not find name for StatusCode";
1065 case 0:
return "No Error";
1066 case -100:
return "Diagnostic Server is busy with another command.";
1067 case -101:
return "InvalidDeviceSpec";
1068 case -102:
return "Device is not present. Verify the device is connected and powered, and that the CAN bus is terminated.";
1069 case -103:
return "Could not put the device into bootloader mode.";
1070 case -104:
return "Could not confirm the device has entered the bootloader.";
1071 case -105:
return "Could not erase flash.";
1072 case -106:
return "Could not field upgrade the device.";
1073 case -107:
return "Bootloader could not verify integrity of the flashed application.";
1074 case -108:
return "Could not run the device firmware application.";
1075 case -109:
return "Unable to set ID to this device.";
1076 case -110:
return "Could not verify that the changed ID took effect.";
1077 case -111:
return "Device field upgrade was successful.";
1078 case -112:
return "Device firmware application is too old.";
1079 case -113:
return "Unable to set name to this device.";
1080 case -114:
return "CompileSzIsWrong";
1081 case -115:
return "Cannot set the ID of a gadgeteer device.";
1082 case -116:
return "This diagnostic action is not supported.";
1083 case -117:
return "Not Implemented, check latest installer.";
1084 case -118:
return "NoDevicesOnBus";
1085 case -119:
return "MoreThanOneFile";
1086 case -120:
return "Specified device was not found. Verify the device is connected and powered, and that the CAN bus is terminated.";
1087 case -121:
return "InvalidDeviceDescriptor";
1088 case -123:
return "CouldNotSendCanFrame";
1089 case -124:
return "NormalModeMsgNotPresent";
1090 case -125:
return "This feature is not supported.";
1091 case -126:
return "The diagnostic server is not field upgrading any devices.";
1092 case -127:
return "CorruptedPOST";
1093 case -128:
return "This device did not report any available configs. Verify firmware and diagnostics are up-to-date.";
1094 case -129:
return "ConfigFailed";
1095 case -130:
return "Unable to factory default this device.";
1096 case -131:
return "CustomNameNotSupported";
1097 case -132:
return "The configs read from the device do not match the configs that were written.";
1098 case -133:
return "Could not apply the device configs.";
1099 case -134:
return "InsufficientSz";
1100 case -135:
return "This feature is not supported for this device model.";
1101 case -140:
return "CouldNotReqDevInfo";
1102 case -141:
return "This device does not support new controls.";
1103 case -142:
return "DeviceIsNull";
1104 case -143:
return "DeviceDidNotRespondToDiagReq";
1105 case -144:
return "This feature requires Tuner X.";
1106 case -145:
return "Command-line issue with caniv.";
1107 case -200:
return "InvalidCrfBadHeader";
1108 case -201:
return "InvalidCrfFileSzInvald";
1109 case -202:
return "Specified CRF is for the wrong product.";
1110 case -203:
return "InvalidCrfNoSects";
1111 case -204:
return "InvalidCrfBadSectHeader";
1112 case -205:
return "InvalidCrfBadSectSize";
1113 case -206:
return "Specified CRF file could not be found.";
1114 case -300:
return "CouldNotFindDynamicId";
1115 case -301:
return "DidNotGetDhcp";
1116 case -302:
return "DidNotGetFullDhcp";
1117 case -350:
return "InvalidLicenseResp";
1118 case -351:
return "InvalidCanivCache";
1119 case -500:
return "CannotOpenSerialPort";
1120 case -501:
return "CannotWriteSerialPort";
1121 case -502:
return "CannotReadSerialPort";
1122 case -503:
return "CannotSerialToDevice";
1123 case -504:
return "NoSerialControlFrameResp";
1124 case -600:
return "CannotOpenUdpPort";
1125 case -601:
return "CannotWriteUdpPort";
1126 case -602:
return "CannotReadUdpPort";
1127 case -603:
return "CannotUdpToDevice";
1128 case -604:
return "NoUdpControlFrameResp";
1129 case -605:
return "TimeoutIso15Response";
1130 case -700:
return "InvalidJson";
1131 case -800:
return "The user application is shutting down.";
1132 case 1000:
return "CAN message is stale, data is valid but old. Check the CAN bus wiring, CAN bus utilization, and power to the device.";
1133 case 1006:
return "Buffer is full, cannot insert more data.";
1134 case 1010:
return "PulseWidthSensorNotPresent";
1135 case 1100:
return "General Warning Occurred.";
1136 case 1103:
return "Firm Vers could not be retrieved. Use Phoenix Tuner X to check ID and firmware(CRF) version.";
1137 case 1104:
return "This feature will be supported in a future update.";
1138 case 1105:
return "The control mode is not valid for this function.";
1139 case 1106:
return "This control mode is not supported yet. A future release will supported this soon.";
1140 case 1109:
return "Motor Controller must have >= 3.2 firmware for motion profile control mode.";
1141 case 1110:
return "Motor Controller must have >= 3.4 firmware for advanced PID0/PID1 features.";
1142 case 1200:
return "SimDeviceNotFound";
1143 case 1201:
return "SimPhysicsTypeNotSupported";
1144 case 1202:
return "SimDeviceAlreadyExists";
1145 case -1001:
return "Could not transmit CAN Frame.";
1146 case -1002:
return "An invalid argument was passed into the function/VI, such as a null pointer.";
1147 case -1003:
return "CAN frame not received/too-stale. Check the CAN bus wiring, CAN bus utilization, and power to the device.";
1148 case -1004:
return "CAN Transmit timed out.";
1149 case -1005:
return "ArbID is incorrect.";
1150 case -1006:
return "CanOverflowed";
1151 case -1007:
return "Sensor Not Present.";
1152 case -1008:
return "Firmware Too Old. Use Phoenix Tuner X to field upgrade your CTRE CAN device firmware(CRF). Then restart your robot application to clear this error.";
1153 case -1009:
return "Control Frame Period could not be changed. Most likely it is not being transmitted.";
1154 case -1010:
return "BufferFailure";
1155 case -1011:
return "Firmware is legacy non-FRC version. Use Phoenix Tuner X to field upgrade your CTRE CAN device firmware(CRF). Firmware greater than 20.0 required.";
1156 case -1100:
return "General Error Occurred.";
1157 case -1200:
return "No new response to update signal.";
1158 case -1201:
return "NotAllPIDValuesUpdated";
1159 case -1300:
return "GEN_PORT_ERROR";
1160 case -1301:
return "PORT_MODULE_TYPE_MISMATCH";
1161 case -1400:
return "GEN_MODULE_ERROR";
1162 case -1401:
return "MODULE_NOT_INIT_SET_ERROR";
1163 case -1402:
return "MODULE_NOT_INIT_GET_ERROR";
1164 case -1500:
return "Wheel Radius is too small, cannot get distance traveled.";
1165 case -1501:
return "Ticks per revolution is 0, cannot get heading.";
1166 case -1502:
return "Distance between wheels is too small, cannot get heading.";
1167 case -1503:
return "GainsAreNotSet";
1168 case -1504:
return "Use RemoteLimitSwitchSource instead of LimitSwitchSource.";
1169 case -1505:
return "Motor Controller Voltage Compensation should not be used with setVoltage(). This causes compensation to happen twice. Disable Voltage Compensation by calling enableVoltageCompensation(false) in order to use setVoltage().";
1170 case -1506:
return "CANdleAnimSlotOutOfBounds";
1171 case -1600:
return "IncompatibleMode";
1172 case -1601:
return "Handle passed into function is incorrect.";
1173 case -1700:
return "Features requires newer firmware version.";
1174 case -1702:
return "Config factory default features require firmware >=3.10.";
1175 case -1703:
return "Config Motion S Curve Strength features require firmware >=4.16.";
1176 case -1704:
return "Talon FX(Falcon 500) Firmware Too Old. Use Phoenix Tuner to field upgrade your CTRE CAN device firmware(CRF) to >=20.3. Then restart your robot application to clear this error.";
1177 case -1705:
return "CANdleAnimationsRequireHigherFirm";
1178 case -1800:
return "LibraryCouldNotBeLoaded";
1179 case -1801:
return "MissingRoutineInLibrary";
1180 case -1802:
return "ResourceNotAvailable";
1181 case -1900:
return "Could not find music file specified, try specifying an absolute path.";
1182 case -1901:
return "Music file size is incorrect, could not parse correctly. Ensure you're using Tuner to generate file.";
1183 case -1902:
return "Music file version is too new, update Phoenix to utilize this file.";
1184 case -1903:
return "Music file is invalid. Ensure you're using Tuner to generate file.";
1185 case -1904:
return "An invalid orchestra action occurred. Ensure a music file is loaded.";
1186 case -1905:
return "This music file version is too old. Regenerate file using Tuner.";
1187 case -1906:
return "Music interrupted due to one of the instruments being commanded a different control mode. Press Play to resume music.";
1188 case -1907:
return "This device doesn't support MusicTone control mode.";
1189 case -2000:
return "kInvalidInterface";
1190 case -2001:
return "kInvalidGuid";
1191 case -2002:
return "kInvalidClass";
1192 case -2003:
return "kInvalidProtocol";
1193 case -2004:
return "kInvalidPath";
1194 case -2005:
return "kGeneralWinUsbError";
1195 case -2006:
return "kFailedSetup";
1196 case -2007:
return "kListenFailed";
1197 case -2008:
return "kSendFailed";
1198 case -2009:
return "kReceiveFailed";
1199 case -2010:
return "kInvalidRespFormat";
1200 case -2011:
return "kWinUsbInitFailed";
1201 case -2012:
return "kWinUsbQueryFailed";
1202 case -2013:
return "kWinUsbGeneralError";
1203 case -2014:
return "kAccessDenied";
1204 case -2015:
return "kFirmwareInvalidResponse";
1205 case -10000:
return "This StatusCode has not been initialized. Make sure the StatusCode is getting assigned to the return of a method.";
1206 case 10000:
return "WarningNotInitialized";
1207 case 10001:
return "The timestamp reported by CANivore is at least 10ms older than the timestamp reported by the system, indicating it's fallen out of sync. This does not impact the data of this message, only the timing.";
1208 case -10001:
return "InvalidNetwork";
1209 case -10002:
return "The CAN bus does not support multi-signal synchronization.";
1210 case -10003:
return "Could not cast from base value to this particular signal's type";
1211 case -10004:
return "Could not find this value when searching for it";
1212 case -10005:
return "This is not supported";
1213 case -10006:
return "Could not determine context from this device hash";
1214 case -10007:
return "Model name in license file does not match model name of selected device.";
1215 case -10008:
return "Serial Number in license file does not match model name of selected device.";
1216 case -10009:
return "Could not find specified file.";
1217 case -10010:
return "License did not successfully download to Device.";
1218 case -10011:
return "Self Test report does not have any values, is the firmware up to date?";
1219 case -10012:
return "Failed to lookup signal properties. This can happen if the fimware is too new and supports signals that older APIs do not support.";
1220 case -10013:
return "The current mode of the device is invalid for getting this signal.";
1221 case -10014:
return "Device is not licensed. Cannot get any data from it.";
1222 case -10015:
return "Size is invalid.";
1223 case -10016:
return "InvalidLicenseResponse";
1224 case -10017:
return "InvalidContext";
1225 case -10018:
return "InternalError";
1226 case -10019:
return "kDeviceResponseIncorrect";
1227 case -10020:
return "kErrorPollingForDevices";
1228 case -10021:
return "Device firmware could not be retrieved. Check that the device is running v6 firmware, the device ID is correct, the specified CAN bus is correct, and the device is powered.";
1229 case -10022:
return "Device firmware could not be decoded. Check that the device is running v6 firmware, the device ID is correct, the specified CAN bus is correct, and the device is powered.";
1230 case -10023:
return "The values specified for master are in valid. Make sure the Device ID of master are correct.";
1231 case -10024:
return "Using a Pro only feature on an unlicensed device. The device may not behave as expected if it continues to operate while unlicensed.";
1232 case -10025:
return "Firmware Too New. Use Phoenix Tuner X to field upgrade your CTRE CAN device firmware(CRF) to a compatible version. Then restart your robot application to clear this error.";
1233 case -10026:
return "The data frame could not be serialized for transmit.";
1234 case -10027:
return "The mechanism is disabled due to a fault in one of the devices.";
1235 case -10028:
return "Firmware version is not compatible with this version of Phoenix. Make sure your firmware and API major versions match.";
1236 case -10029:
return "Could not find specified directory.";
1237 case -10030:
return "This API version is too old for the firmware on the device. Either upgrade the API to a newer version or downgrade the device firmware to an older version for correct behavior.";
1238 case -10031:
return "The signal logger is not running. Start the signal logger before writing any signals.";
1239 case -10032:
return "Blocking operations, such as configs, cannot have a timeout of 0. Pass in a non-zero timeout (typically 0.050+ seconds) for normal operation.";
1240 case -10033:
return "Device cannot be licensed while it is control enabled. Disable and neutral the device to apply the licenses.";
1241 case -10034:
return "Could not open or read the given file.";
1242 case -10035:
return "The given hoot log requires an older version of Phoenix API.";
1243 case -10036:
return "The given hoot log requires a newer version of Phoenix API.";
1244 case -10037:
return "Hoot log is not licensed. Cannot get any data from it.";
1245 case -10038:
return "The simulation timing cannot be advanced by a time step while unpaused. Pause the simulator before advancing time.";
1246 case -10039:
return "Hoot replay does not support replaying multiple files. Ensure that only one file is loaded at a time.";
1247 case -10040:
return "The maximum number of loggable user signals has been exceeded. Additional user signals will not be logged.";
1248 case -10041:
return "The provided model was not a valid device type.";
1252 return "Could not find description for StatusCode";
1272typedef enum _StatusCode_t
1285 InvalidDeviceSpec = -101,
1290 EcuIsNotPresent = -102,
1294 CouldNotEnterBl = -103,
1298 CouldNotConfirmBl = -104,
1302 CouldNotErase = -105,
1306 CouldNotSendFlash = -106,
1310 CouldNotValidate = -107,
1314 CouldNotRunApp = -108,
1318 CouldNotReqSetId = -109,
1322 CouldNotConfirmId = -110,
1326 FlashWasGood = -111,
1334 CouldNotReqSetDesc = -113,
1338 CompileSzIsWrong = -114,
1342 GadgeteerDeviceNoSetId = -115,
1350 NotImplemented = -117,
1354 NoDevicesOnBus = -118,
1358 MoreThanOneFile = -119,
1363 NodeIsInvalid = -120,
1367 InvalidDeviceDescriptor = -121,
1371 CouldNotSendCanFrame = -123,
1375 NormalModeMsgNotPresent = -124,
1379 FeatureNotSupported = -125,
1387 CorruptedPOST = -127,
1396 ConfigFailed = -129,
1400 CouldNotReqFactoryDefault = -130,
1404 CustomNameNotSupported = -131,
1409 ConfigReadWriteMismatch = -132,
1413 CouldNotReqSetConfigs = -133,
1417 InsufficientSz = -134,
1421 InvalidModel = -135,
1425 CouldNotReqDevInfo = -140,
1433 DeviceIsNull = -142,
1437 DeviceDidNotRespondToDiagReq = -143,
1441 OnlySupportedInTunerX = -144,
1445 CanivCliError = -145,
1449 InvalidCrfBadHeader = -200,
1453 InvalidCrfFileSzInvald = -201,
1457 InvalidCrfWrongProduct = -202,
1461 InvalidCrfNoSects = -203,
1465 InvalidCrfBadSectHeader = -204,
1469 InvalidCrfBadSectSize = -205,
1477 CouldNotFindDynamicId = -300,
1481 DidNotGetDhcp = -301,
1485 DidNotGetFullDhcp = -302,
1489 InvalidLicenseResp = -350,
1493 InvalidCanivCache = -351,
1497 CannotOpenSerialPort = -500,
1501 CannotWriteSerialPort = -501,
1505 CannotReadSerialPort = -502,
1509 CannotSerialToDevice = -503,
1513 NoSerialControlFrameResp = -504,
1517 CannotOpenUdpPort = -600,
1521 CannotWriteUdpPort = -601,
1525 CannotReadUdpPort = -602,
1529 CannotUdpToDevice = -603,
1533 NoUdpControlFrameResp = -604,
1537 TimeoutIso15Response = -605,
1545 AppIsTerminating = -800,
1550 CanMessageStale = 1000,
1558 PulseWidthSensorNotPresent = 1010,
1562 GeneralWarning = 1100,
1567 FirmVersionCouldNotBeRetrieved = 1103,
1571 FeaturesNotAvailableYet = 1104,
1575 ControlModeNotValid = 1105,
1580 ControlModeNotSupportedYet = 1106,
1585 MotProfFirmThreshold = 1109,
1590 MotProfFirmThreshold2 = 1110,
1594 SimDeviceNotFound = 1200,
1598 SimPhysicsTypeNotSupported = 1201,
1602 SimDeviceAlreadyExists = 1202,
1611 InvalidParamValue = -1002,
1624 UnexpectedArbId = -1005,
1628 CanOverflowed = -1006,
1632 SensorNotPresent = -1007,
1638 FirmwareTooOld = -1008,
1643 CouldNotChangePeriod = -1009,
1647 BufferFailure = -1010,
1653 FirmwareNonFRC = -1011,
1657 GeneralError = -1100,
1661 SigNotUpdated = -1200,
1665 NotAllPIDValuesUpdated = -1201,
1669 GEN_PORT_ERROR = -1300,
1673 PORT_MODULE_TYPE_MISMATCH = -1301,
1677 GEN_MODULE_ERROR = -1400,
1681 MODULE_NOT_INIT_SET_ERROR = -1401,
1685 MODULE_NOT_INIT_GET_ERROR = -1402,
1689 WheelRadiusTooSmall = -1500,
1693 TicksPerRevZero = -1501,
1697 DistanceBetweenWheelsTooSmall = -1502,
1701 GainsAreNotSet = -1503,
1705 WrongRemoteLimitSwitchSource = -1504,
1712 DoubleVoltageCompensatingWPI = -1505,
1716 CANdleAnimSlotOutOfBounds = -1506,
1720 IncompatibleMode = -1600,
1724 InvalidHandle = -1601,
1728 FeatureRequiresHigherFirm = -1700,
1732 ConfigFactoryDefaultRequiresHigherFirm = -1702,
1736 ConfigMotionSCurveRequiresHigherFirm = -1703,
1742 TalonFXFirmwarePreVBatDetect = -1704,
1746 CANdleAnimationsRequireHigherFirm = -1705,
1750 LibraryCouldNotBeLoaded = -1800,
1754 MissingRoutineInLibrary = -1801,
1758 ResourceNotAvailable = -1802,
1762 MusicFileNotFound = -1900,
1767 MusicFileWrongSize = -1901,
1771 MusicFileTooNew = -1902,
1775 MusicFileInvalid = -1903,
1779 InvalidOrchestraAction = -1904,
1783 MusicFileTooOld = -1905,
1788 MusicInterrupted = -1906,
1792 MusicNotSupported = -1907,
1796 kInvalidInterface = -2000,
1800 kInvalidGuid = -2001,
1804 kInvalidClass = -2002,
1808 kInvalidProtocol = -2003,
1812 kInvalidPath = -2004,
1816 kGeneralWinUsbError = -2005,
1820 kFailedSetup = -2006,
1824 kListenFailed = -2007,
1828 kSendFailed = -2008,
1832 kReceiveFailed = -2009,
1836 kInvalidRespFormat = -2010,
1840 kWinUsbInitFailed = -2011,
1844 kWinUsbQueryFailed = -2012,
1848 kWinUsbGeneralError = -2013,
1852 kAccessDenied = -2014,
1856 kFirmwareInvalidResponse = -2015,
1861 StatusCodeNotInitialized = -10000,
1865 WarningNotInitialized = 10000,
1871 HwTimestampOutOfSync = 10001,
1875 InvalidNetwork = -10001,
1879 MultiSignalNotSupported = -10002,
1883 CouldNotCast = -10003,
1891 NotSupported = -10005,
1895 MissingContext = -10006,
1900 ModelMismatch = -10007,
1905 SerialMismatch = -10008,
1913 LicenseDownloadFailed = -10010,
1917 SelfTestIsEmpty = -10011,
1922 SignalLookupFailed = -10012,
1926 InvalidModeToGetSignal = -10013,
1930 UnlicensedDevice = -10014,
1934 InvalidSize = -10015,
1938 InvalidLicenseResponse = -10016,
1942 InvalidContext = -10017,
1946 InternalError = -10018,
1950 kDeviceResponseIncorrect = -10019,
1954 kErrorPollingForDevices = -10020,
1960 CouldNotRetrieveV6Firmware = -10021,
1966 CouldNotDecodeDeviceFirmware = -10022,
1971 InvalidIDToFollow = -10023,
1976 UsingProFeatureOnUnlicensedDevice = -10024,
1982 FirmwareTooNew = -10025,
1986 CouldNotSerialize = -10026,
1990 MechanismFaulted = -10027,
1995 FirmwareVersNotCompatible = -10028,
1999 DirectoryMissing = -10029,
2010 LoggerNotRunning = -10031,
2015 TimeoutCannotBeZero = -10032,
2020 CannotLicenseWhileEnabled = -10033,
2024 InvalidFile = -10034,
2028 HootLogTooOld = -10035,
2032 HootLogTooNew = -10036,
2036 UnlicensedHootLog = -10037,
2041 CannotStepWhileUnpaused = -10038,
2046 MultipleReplayNotSupported = -10039,
2051 UserSignalLimitExceeded = -10040,
2055 InvalidDeviceModel = -10041,
2064const char *GetStatusCodeName(StatusCode_t value);
2071const char *GetStatusCodeDescription(StatusCode_t value);
Status codes reported by APIs, including OK, warnings, and errors.
Definition: StatusCodes.h:27
static constexpr int CANdleAnimationsRequireHigherFirm
CANdleAnimationsRequireHigherFirm.
Definition: StatusCodes.h:503
static constexpr int InvalidContext
InvalidContext.
Definition: StatusCodes.h:699
static constexpr int PulseWidthSensorNotPresent
PulseWidthSensorNotPresent.
Definition: StatusCodes.h:315
static constexpr int kAccessDenied
kAccessDenied
Definition: StatusCodes.h:609
static constexpr int FirmVersionCouldNotBeRetrieved
Firm Vers could not be retrieved.
Definition: StatusCodes.h:324
static constexpr int NoFile
Could not find specified file.
Definition: StatusCodes.h:666
static constexpr int FeatureRequiresHigherFirm
Features requires newer firmware version.
Definition: StatusCodes.h:485
static constexpr int FirmwareNonFRC
Firmware is legacy non-FRC version.
Definition: StatusCodes.h:410
friend std::ostream & operator<<(std::ostream &os, StatusCode status)
Definition: StatusCodes.h:1255
static constexpr int MusicFileWrongSize
Music file size is incorrect, could not parse correctly.
Definition: StatusCodes.h:524
static constexpr int kGeneralWinUsbError
kGeneralWinUsbError
Definition: StatusCodes.h:573
static constexpr int kWinUsbGeneralError
kWinUsbGeneralError
Definition: StatusCodes.h:605
static constexpr int PORT_MODULE_TYPE_MISMATCH
PORT_MODULE_TYPE_MISMATCH.
Definition: StatusCodes.h:430
static constexpr int SensorNotPresent
Sensor Not Present.
Definition: StatusCodes.h:389
static constexpr int kFirmwareInvalidResponse
kFirmwareInvalidResponse
Definition: StatusCodes.h:613
static constexpr int NotUpdating
The diagnostic server is not field upgrading any devices.
Definition: StatusCodes.h:140
static constexpr int InvalidIDToFollow
The values specified for master are in valid.
Definition: StatusCodes.h:728
static constexpr int CannotStepWhileUnpaused
The simulation timing cannot be advanced by a time step while unpaused.
Definition: StatusCodes.h:798
static constexpr int InternalError
InternalError.
Definition: StatusCodes.h:703
static constexpr int CouldNotChangePeriod
Control Frame Period could not be changed.
Definition: StatusCodes.h:400
static constexpr int IncompatibleMode
IncompatibleMode.
Definition: StatusCodes.h:477
static constexpr int ControlModeNotSupportedYet
This control mode is not supported yet.
Definition: StatusCodes.h:337
static constexpr int NormalModeMsgNotPresent
NormalModeMsgNotPresent.
Definition: StatusCodes.h:132
static constexpr int CouldNotReqDevInfo
CouldNotReqDevInfo.
Definition: StatusCodes.h:182
static constexpr int SimPhysicsTypeNotSupported
SimPhysicsTypeNotSupported.
Definition: StatusCodes.h:355
static constexpr int HootLogTooNew
The given hoot log requires a newer version of Phoenix API.
Definition: StatusCodes.h:789
constexpr const char * GetDescription() const
Gets the description of this StatusCode.
Definition: StatusCodes.h:1061
static constexpr int OK
No Error.
Definition: StatusCodes.h:34
static constexpr int StatusCodeNotInitialized
This StatusCode has not been initialized.
Definition: StatusCodes.h:618
static constexpr int AppIsTerminating
The user application is shutting down.
Definition: StatusCodes.h:302
static constexpr int DoubleVoltageCompensatingWPI
Motor Controller Voltage Compensation should not be used with setVoltage().
Definition: StatusCodes.h:469
static constexpr int GEN_MODULE_ERROR
GEN_MODULE_ERROR.
Definition: StatusCodes.h:434
static constexpr int NotImplemented
Not Implemented, check latest installer.
Definition: StatusCodes.h:107
static constexpr int SignalLookupFailed
Failed to lookup signal properties.
Definition: StatusCodes.h:679
static constexpr int UnlicensedDevice
Device is not licensed.
Definition: StatusCodes.h:687
static constexpr int kInvalidGuid
kInvalidGuid
Definition: StatusCodes.h:557
static constexpr int CouldNotCast
Could not cast from base value to this particular signal's type.
Definition: StatusCodes.h:640
static constexpr int SimDeviceNotFound
SimDeviceNotFound.
Definition: StatusCodes.h:351
static constexpr int CouldNotValidate
Bootloader could not verify integrity of the flashed application.
Definition: StatusCodes.h:67
static constexpr int InvalidCrfNoSects
InvalidCrfNoSects.
Definition: StatusCodes.h:218
static constexpr int CouldNotReqSetDesc
Unable to set name to this device.
Definition: StatusCodes.h:91
static constexpr int CannotUdpToDevice
CannotUdpToDevice.
Definition: StatusCodes.h:286
static constexpr int MusicFileTooOld
This music file version is too old.
Definition: StatusCodes.h:540
static constexpr int InvalidHandle
Handle passed into function is incorrect.
Definition: StatusCodes.h:481
static constexpr int CannotOpenSerialPort
CannotOpenSerialPort.
Definition: StatusCodes.h:254
constexpr bool operator!=(int data) const
Definition: StatusCodes.h:831
static constexpr int kInvalidInterface
kInvalidInterface
Definition: StatusCodes.h:553
static constexpr int ConfigReadWriteMismatch
The configs read from the device do not match the configs that were written.
Definition: StatusCodes.h:166
static constexpr int NotAllPIDValuesUpdated
NotAllPIDValuesUpdated.
Definition: StatusCodes.h:422
static constexpr int TaskIsBusy
Diagnostic Server is busy with another command.
Definition: StatusCodes.h:38
constexpr const char * GetName() const
Gets the name of this StatusCode.
Definition: StatusCodes.h:862
static constexpr int kInvalidProtocol
kInvalidProtocol
Definition: StatusCodes.h:565
static constexpr int CouldNotSendFlash
Could not field upgrade the device.
Definition: StatusCodes.h:63
static constexpr int CannotOpenUdpPort
CannotOpenUdpPort.
Definition: StatusCodes.h:274
static constexpr int CanivCliError
Command-line issue with caniv.
Definition: StatusCodes.h:202
constexpr bool operator!=(StatusCode data) const
Definition: StatusCodes.h:827
static constexpr int InsufficientSz
InsufficientSz.
Definition: StatusCodes.h:174
static constexpr int AppTooOld
Device firmware application is too old.
Definition: StatusCodes.h:87
constexpr bool operator==(int data) const
Definition: StatusCodes.h:823
static constexpr int MultipleReplayNotSupported
Hoot replay does not support replaying multiple files.
Definition: StatusCodes.h:803
static constexpr int WarningNotInitialized
WarningNotInitialized.
Definition: StatusCodes.h:622
static constexpr int MODULE_NOT_INIT_SET_ERROR
MODULE_NOT_INIT_SET_ERROR.
Definition: StatusCodes.h:438
static constexpr int InvalidJson
InvalidJson.
Definition: StatusCodes.h:298
static constexpr int BufferFull
Buffer is full, cannot insert more data.
Definition: StatusCodes.h:311
static constexpr int MusicFileInvalid
Music file is invalid.
Definition: StatusCodes.h:532
static constexpr int DidNotGetFullDhcp
DidNotGetFullDhcp.
Definition: StatusCodes.h:242
static constexpr int CanOverflowed
CanOverflowed.
Definition: StatusCodes.h:385
static constexpr int MotProfFirmThreshold2
Motor Controller must have >= 3.4 firmware for advanced PID0/PID1 features.
Definition: StatusCodes.h:347
static constexpr int FlashWasGood
Device field upgrade was successful.
Definition: StatusCodes.h:83
static constexpr int CouldNotRunApp
Could not run the device firmware application.
Definition: StatusCodes.h:71
static constexpr int CouldNotConfirmBl
Could not confirm the device has entered the bootloader.
Definition: StatusCodes.h:55
static constexpr int GeneralError
General Error Occurred.
Definition: StatusCodes.h:414
static constexpr int GeneralWarning
General Warning Occurred.
Definition: StatusCodes.h:319
static constexpr int HootLogTooOld
The given hoot log requires an older version of Phoenix API.
Definition: StatusCodes.h:785
static constexpr int CouldNotErase
Could not erase flash.
Definition: StatusCodes.h:59
static constexpr int HwTimestampOutOfSync
The timestamp reported by CANivore is at least 10ms older than the timestamp reported by the system,...
Definition: StatusCodes.h:628
static constexpr int CouldNotEnterBl
Could not put the device into bootloader mode.
Definition: StatusCodes.h:51
static constexpr int ModelMismatch
Model name in license file does not match model name of selected device.
Definition: StatusCodes.h:657
static constexpr int NoConfigs
This device did not report any available configs.
Definition: StatusCodes.h:149
constexpr bool IsWarning() const
Definition: StatusCodes.h:851
static constexpr int SerialMismatch
Serial Number in license file does not match model name of selected device.
Definition: StatusCodes.h:662
static constexpr int InvalidLicenseResp
InvalidLicenseResp.
Definition: StatusCodes.h:246
static constexpr int ConfigFailed
ConfigFailed.
Definition: StatusCodes.h:153
static constexpr int InvalidCrfBadHeader
InvalidCrfBadHeader.
Definition: StatusCodes.h:206
static constexpr int CouldNotFindDynamicId
CouldNotFindDynamicId.
Definition: StatusCodes.h:234
static constexpr int GainsAreNotSet
GainsAreNotSet.
Definition: StatusCodes.h:458
static constexpr int BufferFailure
BufferFailure.
Definition: StatusCodes.h:404
static constexpr int OnlySupportedInTunerX
This feature requires Tuner X.
Definition: StatusCodes.h:198
static constexpr int InvalidModel
This feature is not supported for this device model.
Definition: StatusCodes.h:178
static constexpr int CannotWriteSerialPort
CannotWriteSerialPort.
Definition: StatusCodes.h:258
static constexpr int InvalidParamValue
An invalid argument was passed into the function/VI, such as a null pointer.
Definition: StatusCodes.h:368
constexpr StatusCode()
Definition: StatusCodes.h:815
static constexpr int DirectoryMissing
Could not find specified directory.
Definition: StatusCodes.h:756
static constexpr int CanMessageStale
CAN message is stale, data is valid but old.
Definition: StatusCodes.h:307
static constexpr int InvalidCrfBadSectHeader
InvalidCrfBadSectHeader.
Definition: StatusCodes.h:222
static constexpr int kSendFailed
kSendFailed
Definition: StatusCodes.h:585
static constexpr int NoSerialControlFrameResp
NoSerialControlFrameResp.
Definition: StatusCodes.h:270
static constexpr int kInvalidRespFormat
kInvalidRespFormat
Definition: StatusCodes.h:593
static constexpr int TalonFXFirmwarePreVBatDetect
Talon FX(Falcon 500) Firmware Too Old.
Definition: StatusCodes.h:499
static constexpr int ControlModeNotValid
The control mode is not valid for this function.
Definition: StatusCodes.h:332
static constexpr int InvalidOrchestraAction
An invalid orchestra action occurred.
Definition: StatusCodes.h:536
static constexpr int InvalidCrfFileSzInvald
InvalidCrfFileSzInvald.
Definition: StatusCodes.h:210
static constexpr int InvalidModeToGetSignal
The current mode of the device is invalid for getting this signal.
Definition: StatusCodes.h:683
static constexpr int InvalidCrfWrongProduct
Specified CRF is for the wrong product.
Definition: StatusCodes.h:214
constexpr bool operator<(StatusCode data) const
Definition: StatusCodes.h:835
static constexpr int kWinUsbQueryFailed
kWinUsbQueryFailed
Definition: StatusCodes.h:601
static constexpr int SelfTestIsEmpty
Self Test report does not have any values, is the firmware up to date?
Definition: StatusCodes.h:674
static constexpr int NoUdpControlFrameResp
NoUdpControlFrameResp.
Definition: StatusCodes.h:290
static constexpr int DeviceDidNotRespondToDiagReq
DeviceDidNotRespondToDiagReq.
Definition: StatusCodes.h:194
static constexpr int EcuIsNotPresent
Device is not present.
Definition: StatusCodes.h:47
static constexpr int InvalidCrfBadSectSize
InvalidCrfBadSectSize.
Definition: StatusCodes.h:226
static constexpr int CannotReadUdpPort
CannotReadUdpPort.
Definition: StatusCodes.h:282
static constexpr int LoggerNotRunning
The signal logger is not running.
Definition: StatusCodes.h:767
static constexpr int kListenFailed
kListenFailed
Definition: StatusCodes.h:581
constexpr StatusCode(int val)
Definition: StatusCodes.h:814
static constexpr int MotProfFirmThreshold
Motor Controller must have >= 3.2 firmware for motion profile control mode.
Definition: StatusCodes.h:342
static constexpr int FeaturesNotAvailableYet
This feature will be supported in a future update.
Definition: StatusCodes.h:328
static constexpr int TxFailed
Could not transmit CAN Frame.
Definition: StatusCodes.h:363
static constexpr int InvalidTask
This diagnostic action is not supported.
Definition: StatusCodes.h:103
static constexpr int FirmwareVersNotCompatible
Firmware version is not compatible with this version of Phoenix.
Definition: StatusCodes.h:752
static constexpr int UserSignalLimitExceeded
The maximum number of loggable user signals has been exceeded.
Definition: StatusCodes.h:808
static constexpr int InvalidLicenseResponse
InvalidLicenseResponse.
Definition: StatusCodes.h:695
static constexpr int CompileSzIsWrong
CompileSzIsWrong.
Definition: StatusCodes.h:95
static constexpr int CustomNameNotSupported
CustomNameNotSupported.
Definition: StatusCodes.h:161
static constexpr int CouldNotDecodeDeviceFirmware
Device firmware could not be decoded.
Definition: StatusCodes.h:723
static constexpr int InvalidCanivCache
InvalidCanivCache.
Definition: StatusCodes.h:250
static constexpr int FirmwareTooNew
Firmware Too New.
Definition: StatusCodes.h:739
static constexpr int kReceiveFailed
kReceiveFailed
Definition: StatusCodes.h:589
static constexpr int MusicInterrupted
Music interrupted due to one of the instruments being commanded a different control mode.
Definition: StatusCodes.h:545
static constexpr int CouldNotRetrieveV6Firmware
Device firmware could not be retrieved.
Definition: StatusCodes.h:717
static constexpr int CannotReadSerialPort
CannotReadSerialPort.
Definition: StatusCodes.h:262
static constexpr int MissingRoutineInLibrary
MissingRoutineInLibrary.
Definition: StatusCodes.h:511
static constexpr int MusicFileNotFound
Could not find music file specified, try specifying an absolute path.
Definition: StatusCodes.h:519
static constexpr int WrongRemoteLimitSwitchSource
Use RemoteLimitSwitchSource instead of LimitSwitchSource.
Definition: StatusCodes.h:462
static constexpr int MoreThanOneFile
MoreThanOneFile.
Definition: StatusCodes.h:115
static constexpr int kWinUsbInitFailed
kWinUsbInitFailed
Definition: StatusCodes.h:597
static constexpr int CouldNotConfirmId
Could not verify that the changed ID took effect.
Definition: StatusCodes.h:79
constexpr bool IsOK() const
Definition: StatusCodes.h:855
static constexpr int CannotSerialToDevice
CannotSerialToDevice.
Definition: StatusCodes.h:266
static constexpr int LibraryCouldNotBeLoaded
LibraryCouldNotBeLoaded.
Definition: StatusCodes.h:507
static constexpr int NoControls
This device does not support new controls.
Definition: StatusCodes.h:186
static constexpr int ConfigMotionSCurveRequiresHigherFirm
Config Motion S Curve Strength features require firmware >=4.16.
Definition: StatusCodes.h:493
static constexpr int MusicNotSupported
This device doesn't support MusicTone control mode.
Definition: StatusCodes.h:549
static constexpr int GadgeteerDeviceNoSetId
Cannot set the ID of a gadgeteer device.
Definition: StatusCodes.h:99
static constexpr int NodeIsInvalid
Specified device was not found.
Definition: StatusCodes.h:120
static constexpr int InvalidSize
Size is invalid.
Definition: StatusCodes.h:691
static constexpr int TimeoutCannotBeZero
Blocking operations, such as configs, cannot have a timeout of 0.
Definition: StatusCodes.h:772
static constexpr int MODULE_NOT_INIT_GET_ERROR
MODULE_NOT_INIT_GET_ERROR.
Definition: StatusCodes.h:442
static constexpr int CouldNotReqFactoryDefault
Unable to factory default this device.
Definition: StatusCodes.h:157
static constexpr int ConfigFactoryDefaultRequiresHigherFirm
Config factory default features require firmware >=3.10.
Definition: StatusCodes.h:489
static constexpr int FirmwareTooOld
Firmware Too Old.
Definition: StatusCodes.h:395
static constexpr int CorruptedPOST
CorruptedPOST.
Definition: StatusCodes.h:144
static constexpr int LicenseDownloadFailed
License did not successfully download to Device.
Definition: StatusCodes.h:670
static constexpr int FeatureNotSupported
This feature is not supported.
Definition: StatusCodes.h:136
static constexpr int kErrorPollingForDevices
kErrorPollingForDevices
Definition: StatusCodes.h:711
static constexpr int NoCrfFile
Specified CRF file could not be found.
Definition: StatusCodes.h:230
static constexpr int UnexpectedArbId
ArbID is incorrect.
Definition: StatusCodes.h:381
static constexpr int GEN_PORT_ERROR
GEN_PORT_ERROR.
Definition: StatusCodes.h:426
static constexpr int CANdleAnimSlotOutOfBounds
CANdleAnimSlotOutOfBounds.
Definition: StatusCodes.h:473
static constexpr int CouldNotSendCanFrame
CouldNotSendCanFrame.
Definition: StatusCodes.h:128
static constexpr int kInvalidClass
kInvalidClass
Definition: StatusCodes.h:561
static constexpr int WheelRadiusTooSmall
Wheel Radius is too small, cannot get distance traveled.
Definition: StatusCodes.h:446
static constexpr int CouldNotSerialize
The data frame could not be serialized for transmit.
Definition: StatusCodes.h:743
static constexpr int InvalidDeviceSpec
InvalidDeviceSpec.
Definition: StatusCodes.h:42
static constexpr int UnlicensedHootLog
Hoot log is not licensed.
Definition: StatusCodes.h:793
static constexpr int NoDevicesOnBus
NoDevicesOnBus.
Definition: StatusCodes.h:111
static constexpr int MechanismFaulted
The mechanism is disabled due to a fault in one of the devices.
Definition: StatusCodes.h:747
static constexpr int ApiTooOld
This API version is too old for the firmware on the device.
Definition: StatusCodes.h:762
static constexpr int DidNotGetDhcp
DidNotGetDhcp.
Definition: StatusCodes.h:238
static constexpr int InvalidDeviceDescriptor
InvalidDeviceDescriptor.
Definition: StatusCodes.h:124
static constexpr int MusicFileTooNew
Music file version is too new, update Phoenix to utilize this file.
Definition: StatusCodes.h:528
static constexpr int UsingProFeatureOnUnlicensedDevice
Using a Pro only feature on an unlicensed device.
Definition: StatusCodes.h:733
constexpr bool IsError() const
Definition: StatusCodes.h:847
static constexpr int kDeviceResponseIncorrect
kDeviceResponseIncorrect
Definition: StatusCodes.h:707
static constexpr int SimDeviceAlreadyExists
SimDeviceAlreadyExists.
Definition: StatusCodes.h:359
static constexpr int TicksPerRevZero
Ticks per revolution is 0, cannot get heading.
Definition: StatusCodes.h:450
constexpr bool operator==(StatusCode data) const
Definition: StatusCodes.h:819
static constexpr int kFailedSetup
kFailedSetup
Definition: StatusCodes.h:577
static constexpr int CannotLicenseWhileEnabled
Device cannot be licensed while it is control enabled.
Definition: StatusCodes.h:777
static constexpr int CouldNotReqSetConfigs
Could not apply the device configs.
Definition: StatusCodes.h:170
static constexpr int InvalidDeviceModel
The provided model was not a valid device type.
Definition: StatusCodes.h:812
static constexpr int CouldNotReqSetId
Unable to set ID to this device.
Definition: StatusCodes.h:75
static constexpr int kInvalidPath
kInvalidPath
Definition: StatusCodes.h:569
static constexpr int TxTimeout
CAN Transmit timed out.
Definition: StatusCodes.h:377
static constexpr int InvalidNetwork
InvalidNetwork.
Definition: StatusCodes.h:632
static constexpr int MissingContext
Could not determine context from this device hash.
Definition: StatusCodes.h:652
static constexpr int DeviceIsNull
DeviceIsNull.
Definition: StatusCodes.h:190
constexpr bool operator<(int data) const
Definition: StatusCodes.h:839
static constexpr int MultiSignalNotSupported
The CAN bus does not support multi-signal synchronization.
Definition: StatusCodes.h:636
static constexpr int SigNotUpdated
No new response to update signal.
Definition: StatusCodes.h:418
static constexpr int TimeoutIso15Response
TimeoutIso15Response.
Definition: StatusCodes.h:294
static constexpr int CannotWriteUdpPort
CannotWriteUdpPort.
Definition: StatusCodes.h:278
static constexpr int ResourceNotAvailable
ResourceNotAvailable.
Definition: StatusCodes.h:515
static constexpr int DistanceBetweenWheelsTooSmall
Distance between wheels is too small, cannot get heading.
Definition: StatusCodes.h:454
static constexpr int RxTimeout
CAN frame not received/too-stale.
Definition: StatusCodes.h:373
static constexpr int NotSupported
This is not supported.
Definition: StatusCodes.h:648
static constexpr int InvalidFile
Could not open or read the given file.
Definition: StatusCodes.h:781
static constexpr int NotFound
Could not find this value when searching for it.
Definition: StatusCodes.h:644
@ OK
The mechanism is running normally.
Represents the state of one swerve module.
Definition: StatusCodes.h:18