Ejemplo n.º 1
0
        // -------------------------------------------------------------

        #endregion ctor

        // -------------------------------------------------------------

        #region methods

        // -------------------------------------------------------------

        /**
         * Gibt den Pin wieder frei
         */
        public void Dispose(  )
        {
            this.ListenGpio.Dispose(  );

            this.listenGpio = null;

            this.pin = null;
        }
Ejemplo n.º 2
0
        // -------------------------------------------------------------

        /**
         * Gibt die Instance für einen Pin wieder
         *
         * @param[in] _pin (Pin) Den Pin für den die Instance abgerufen wird
         * @param[in] _setup (PinSetup) Der Setup für diesen Pin
         *
         * @return (GPIOPin) Die Instance für den abgerufen Pin.
         */
        public GPIOPin SetupOrChangeGPIOPin(Pin _pin, PinSetup _setup)
        {
            GPIOPin result = this[_pin];

            if (result == null)
            {
                result = new GPIOPin(_pin, _setup);

                this.GPIOPins.Add(result);
            }
            else
            {
                result.ChangeSetup(_setup);
            }

            return(result);
        }
Ejemplo n.º 3
0
        // -------------------------------------------------------------

        #endregion get/set

        // -------------------------------------------------------------

        #region ctor

        // -------------------------------------------------------------

        /**
         * Konstuktor dieser Klasse
         *
         * @param[in] _pin (Pin) Der Pin der diese Instance zugewiesen wird
         * @param[in] _setup (PinSetup) Der Setup mit dem dieser Pin Initialisiert wurde
         */
        protected GPIO(Pin _pin, PinSetup _setup)
        {
            this.pin = GPIOController.Instance.SetupOrChangeGPIOPin(_pin, _setup);
        }