Exemplo n.º 1
0
        internal void ProcessInfo(PluginTypes.TrackedDeviceInfo info)
        {
            const byte gpio_id_mask  = 0x3;
            const byte gpio_rev_mask = 0xC;

            m_SerialNumber = info.serial_number;
            m_HardwareType = (Hardware)info.device_type;
            // m_Index = info.tracked_device_index; // Redundant, and screws up Hydra

            byte bid  = (byte)(info.board_hardware_gpio & gpio_id_mask);
            byte brev = (byte)(info.board_hardware_gpio & gpio_rev_mask);

            m_Hardware = info.hardware_revision.ToString("X2") + "-" + bid.ToString("X") + "r" + brev.ToString("X");
            m_Firmware = info.mcu_firmware_version_major.ToString("X2") + "." + info.mcu_firmware_version_minor.ToString("X2") + "-" +
                         info.dsp_firmware_version_major.ToString("X2") + "." + info.dsp_firmware_version_minor.ToString("X2");
            m_Runtime = info.runtime_version_major + "." + info.runtime_version_minor.ToString("00");

            m_MagneticFrequency = info.magnetic_frequency;
            m_batteryVoltage    = info.battery_voltage;

            m_hasInfo = (m_HardwareType != Hardware.NONE);

            if (m_hasInfo)
            {
                m_Connected = true;
            }
        }
Exemplo n.º 2
0
 public static extern PluginTypes.Result sxCoreGetInfo(uint tracked_device_index, out PluginTypes.TrackedDeviceInfo info);