001package com.ctre.phoenix.motorcontrol;
002
003/**
004 * Choose the demand type for the 4 param set
005 */
006public enum DemandType {
007    /**
008         * Ignore the demand value and apply neutral/no-change.
009         */
010        Neutral(0),
011        /**
012         * When closed-looping, set the target of the aux PID loop to the demand value.
013         *
014         * When following, follow the processed output of the combined 
015         * primary/aux PID output of the master.  The demand value is ignored.
016         * Although it is much cleaner to use the 2-param Follow() in such cases.
017         */
018        AuxPID(1), //!< Target value of PID loop 1.  When f
019        /**
020         * When closed-looping, add demand arbitrarily to the closed-loop output.
021         */
022        ArbitraryFeedForward(2); //!< Simply add to the output
023
024        /**
025         * Value of DemandType
026         */
027        public int value;
028
029        /**
030         * Create DemandType of specified value
031         * @param value Value of DemandType
032         */
033        DemandType(int value)
034        {
035                this.value = value;
036        }
037};