001/* Copyright (C) Cross The Road Electronics 2024 */
002package com.ctre.phoenix.signals;
003
004/**
005 * Interface for invertable objects
006 */
007public interface IInvertable
008{
009        /**
010         * Inverts the hbridge output of the motor controller.
011         *
012         * This does not impact sensor phase and should not be used to correct sensor polarity.
013         *
014         * This will invert the hbridge output but NOT the LEDs.
015         * This ensures....
016         *  - Green LEDs always represents positive request from robot-controller/closed-looping mode.
017         *  - Green LEDs correlates to forward limit switch.
018         *  - Green LEDs correlates to forward soft limit.
019         *
020         * @param invert
021         *            Invert state to set.
022         */
023        void setInverted(boolean invert);
024        /**
025         * @return invert setting of motor output.
026         */
027        boolean getInverted();
028}