001/* Copyright (C) Cross The Road Electronics 2024 */
002package com.ctre.phoenix.motorcontrol.can;
003
004import com.ctre.phoenix.motorcontrol.RemoteSensorSource;
005
006/**
007 * Configurations for filters
008 */
009public class FilterConfiguration {
010
011    /**
012     * Remote Sensor's device ID
013     */
014    public int remoteSensorDeviceID;
015    /**
016         * The remote sensor device and signal type to bind.
017     */
018    public RemoteSensorSource remoteSensorSource;
019
020    public FilterConfiguration() {
021        remoteSensorDeviceID = 0;
022        remoteSensorSource = RemoteSensorSource.Off;
023    }
024
025    /**
026     * @return string representation of currently selected configs
027     */
028        public String toString() {
029                return toString("");
030        }
031
032    /**
033     * @param prependString String to prepend to all the configs
034     * @return string representation fo currently selected configs
035     */
036    public String toString(String prependString) {
037        String retstr = prependString + ".remoteSensorDeviceID = " + String.valueOf(remoteSensorDeviceID) + ";\n";
038        retstr += prependString + ".remoteSensorSource = " + remoteSensorSource.toString() + ";\n";
039        return retstr;
040    }
041
042}; // struct FilterConfiguration
043