001/* 002 * Copyright (C) Cross The Road Electronics. All rights reserved. 003 * License information can be found in CTRE_LICENSE.txt 004 * For support and suggestions contact support@ctr-electronics.com or file 005 * an issue tracker at https://github.com/CrossTheRoadElec/Phoenix-Releases 006 */ 007package com.ctre.phoenixpro.signals; 008 009import java.util.HashMap; 010 011/** 012 * Determines where to poll the forward limit switch. This defaults to the 013 * limit switch pin on the limit switch connector. 014 */ 015public enum ForwardLimitSourceValue 016{ 017 LimitSwitchPin(0),; 018 019 public final int value; 020 021 ForwardLimitSourceValue(int initValue) 022 { 023 this.value = initValue; 024 } 025 026 private static HashMap<Integer, ForwardLimitSourceValue> _map = null; 027 static 028 { 029 _map = new HashMap<Integer, ForwardLimitSourceValue>(); 030 for (ForwardLimitSourceValue type : ForwardLimitSourceValue.values()) 031 { 032 _map.put(type.value, type); 033 } 034 } 035 036 /** 037 * Gets ForwardLimitSourceValue from specified value 038 * @param value Value of ForwardLimitSourceValue 039 * @return ForwardLimitSourceValue of specified value 040 */ 041 public static ForwardLimitSourceValue valueOf(int value) 042 { 043 ForwardLimitSourceValue retval = _map.get(value); 044 if(retval != null) return retval; 045 return ForwardLimitSourceValue.values()[0]; 046 } 047}