001/* Copyright (C) Cross The Road Electronics 2024 */ 002package com.ctre.phoenix.sensors; 003 004/** 005 * Enumerated types for frame rate ms. 006 */ 007public enum PigeonIMU_StatusFrame { 008 /** 009 * General Status of Pigeon 010 */ 011 CondStatus_1_General(0x042000), 012 /** 013 * Yaw Pitch Roll information from Pigeon 014 */ 015 CondStatus_9_SixDeg_YPR(0x042200), 016 /** 017 * 9-Axis fused value 018 */ 019 CondStatus_6_SensorFusion(0x042140), 020 /** 021 * Accumulated Gyro information from Pigeon 022 */ 023 CondStatus_11_GyroAccum(0x042280), 024 /** 025 * General Compass information from Pigeon 026 */ 027 CondStatus_2_GeneralCompass(0x042040), 028 /** 029 * General Accelerometer information from Pigeon 030 */ 031 CondStatus_3_GeneralAccel(0x042080), 032 /** 033 * Quaternion value information from Pigeon 034 */ 035 CondStatus_10_SixDeg_Quat(0x042240), 036 /** 037 * Raw Magnetometer information from Pigeon 038 */ 039 RawStatus_4_Mag(0x041CC0), 040 /** 041 * Biased Gyro information from Pigeon 042 */ 043 BiasedStatus_2_Gyro(0x041C40), 044 /** 045 * Biased Magnetometer information from Pigeon 046 */ 047 BiasedStatus_4_Mag(0x041CC0), 048 /** 049 * Biased Accelerometer information from Pigeon 050 */ 051 BiasedStatus_6_Accel(0x41D40); 052 053 /** 054 * value of Status frame 055 */ 056 public final int value; 057 058 /** 059 * Create status frame of initValue 060 * @param initValue value of status frame 061 */ 062 PigeonIMU_StatusFrame(int initValue) { 063 this.value = initValue; 064 } 065 066 /** 067 * Get StatusFrame of specified value 068 * @param value value of status frame 069 * @return PigeonIMU_StatusFrame of specified value 070 */ 071 public static PigeonIMU_StatusFrame valueOf(int value) { 072 for (PigeonIMU_StatusFrame mode : values()) { 073 if (mode.value == value) { 074 return mode; 075 } 076 } 077 return null; 078 } 079}