001package com.ctre.phoenix;
002
003import com.ctre.phoenix.CustomParamConfiguration;
004import com.ctre.phoenix.VelocityPeriod;
005
006
007
008/**
009 * Configurables available to CANifier
010 */
011public class CANifierConfiguration extends CustomParamConfiguration{
012    /** 
013     * Velocity measurement period to use
014     */
015    public VelocityPeriod velocityMeasurementPeriod;
016    /**
017     * Velocity measurement window to use
018     */
019    public int velocityMeasurementWindow;
020    /**
021     * Whether to clear sensor position on forward limit
022     */
023    public boolean clearPositionOnLimitF;
024    /**
025     * Whether to clear sensor position on reverse limit
026     */
027    public boolean clearPositionOnLimitR;
028    /**
029     * Whether to clear sensor position on index
030     */
031    public boolean clearPositionOnQuadIdx;
032
033    public CANifierConfiguration() {
034                velocityMeasurementPeriod = VelocityPeriod.Period_100Ms; 
035                velocityMeasurementWindow = 64;
036            clearPositionOnLimitF = false;
037        clearPositionOnLimitR = false;
038        clearPositionOnQuadIdx = false;
039
040    }
041
042    /**
043     * @return String representation of configs
044     */
045        public String toString() {
046                return toString("");
047        }
048
049    /**
050     * @param prependString
051     *              String to prepend to configs
052     * @return String representation of configs
053     */
054    public String toString(String prependString) {
055
056        String retstr = prependString + ".velocityMeasurementPeriod = " + velocityMeasurementPeriod.toString() + ";\n";
057        retstr += prependString + ".velocityMeasurementWindow = " + String.valueOf(velocityMeasurementWindow) + ";\n";
058        retstr += prependString + ".clearPositionOnLimitF = " + String.valueOf(clearPositionOnLimitF) + ";\n";
059        retstr += prependString + ".clearPositionOnLimitR = " + String.valueOf(clearPositionOnLimitR) + ";\n";
060        retstr += prependString + ".clearPositionOnQuadIdx = " + String.valueOf(clearPositionOnQuadIdx) + ";\n";
061
062
063        retstr += super.toString(prependString);
064
065        return retstr;
066    }
067
068}