/**
         * <summary>
         *   Retrieves a digital IO port for a given identifier.
         * <para>
         *   The identifier can be specified using several formats:
         * </para>
         * <para>
         * </para>
         * <para>
         *   - FunctionLogicalName
         * </para>
         * <para>
         *   - ModuleSerialNumber.FunctionIdentifier
         * </para>
         * <para>
         *   - ModuleSerialNumber.FunctionLogicalName
         * </para>
         * <para>
         *   - ModuleLogicalName.FunctionIdentifier
         * </para>
         * <para>
         *   - ModuleLogicalName.FunctionLogicalName
         * </para>
         * <para>
         * </para>
         * <para>
         *   This function does not require that the digital IO port is online at the time
         *   it is invoked. The returned object is nevertheless valid.
         *   Use the method <c>YDigitalIO.isOnline()</c> to test if the digital IO port is
         *   indeed online at a given time. In case of ambiguity when looking for
         *   a digital IO port by logical name, no error is notified: the first instance
         *   found is returned. The search is performed first by hardware name,
         *   then by logical name.
         * </para>
         * <para>
         *   If a call to this object's is_online() method returns FALSE although
         *   you are certain that the matching device is plugged, make sure that you did
         *   call registerHub() at application initialization time.
         * </para>
         * <para>
         * </para>
         * </summary>
         * <param name="func">
         *   a string that uniquely characterizes the digital IO port
         * </param>
         * <returns>
         *   a <c>YDigitalIO</c> object allowing you to drive the digital IO port.
         * </returns>
         */
        public static YDigitalIO FindDigitalIO(string func)
        {
            YDigitalIO obj;

            obj = (YDigitalIO)YFunction._FindFromCache("DigitalIO", func);
            if (obj == null)
            {
                obj = new YDigitalIO(func);
                YFunction._AddToCache("DigitalIO", func, obj);
            }
            return(obj);
        }
예제 #2
0
        /**
         * <summary>
         *   Retrieves a wireless lan interface for a given identifier.
         * <para>
         *   The identifier can be specified using several formats:
         * </para>
         * <para>
         * </para>
         * <para>
         *   - FunctionLogicalName
         * </para>
         * <para>
         *   - ModuleSerialNumber.FunctionIdentifier
         * </para>
         * <para>
         *   - ModuleSerialNumber.FunctionLogicalName
         * </para>
         * <para>
         *   - ModuleLogicalName.FunctionIdentifier
         * </para>
         * <para>
         *   - ModuleLogicalName.FunctionLogicalName
         * </para>
         * <para>
         * </para>
         * <para>
         *   This function does not require that the wireless lan interface is online at the time
         *   it is invoked. The returned object is nevertheless valid.
         *   Use the method <c>YWireless.isOnline()</c> to test if the wireless lan interface is
         *   indeed online at a given time. In case of ambiguity when looking for
         *   a wireless lan interface by logical name, no error is notified: the first instance
         *   found is returned. The search is performed first by hardware name,
         *   then by logical name.
         * </para>
         * <para>
         *   If a call to this object's is_online() method returns FALSE although
         *   you are certain that the matching device is plugged, make sure that you did
         *   call registerHub() at application initialization time.
         * </para>
         * <para>
         * </para>
         * </summary>
         * <param name="func">
         *   a string that uniquely characterizes the wireless lan interface
         * </param>
         * <returns>
         *   a <c>YWireless</c> object allowing you to drive the wireless lan interface.
         * </returns>
         */
        public static YWireless FindWireless(string func)
        {
            YWireless obj;

            obj = (YWireless)YFunction._FindFromCache("Wireless", func);
            if (obj == null)
            {
                obj = new YWireless(func);
                YFunction._AddToCache("Wireless", func, obj);
            }
            return(obj);
        }
        /**
         * <summary>
         *   Retrieves a multi-cell weighing scale sensor for a given identifier.
         * <para>
         *   The identifier can be specified using several formats:
         * </para>
         * <para>
         * </para>
         * <para>
         *   - FunctionLogicalName
         * </para>
         * <para>
         *   - ModuleSerialNumber.FunctionIdentifier
         * </para>
         * <para>
         *   - ModuleSerialNumber.FunctionLogicalName
         * </para>
         * <para>
         *   - ModuleLogicalName.FunctionIdentifier
         * </para>
         * <para>
         *   - ModuleLogicalName.FunctionLogicalName
         * </para>
         * <para>
         * </para>
         * <para>
         *   This function does not require that the multi-cell weighing scale sensor is online at the time
         *   it is invoked. The returned object is nevertheless valid.
         *   Use the method <c>YMultiCellWeighScale.isOnline()</c> to test if the multi-cell weighing scale sensor is
         *   indeed online at a given time. In case of ambiguity when looking for
         *   a multi-cell weighing scale sensor by logical name, no error is notified: the first instance
         *   found is returned. The search is performed first by hardware name,
         *   then by logical name.
         * </para>
         * <para>
         *   If a call to this object's is_online() method returns FALSE although
         *   you are certain that the matching device is plugged, make sure that you did
         *   call registerHub() at application initialization time.
         * </para>
         * <para>
         * </para>
         * </summary>
         * <param name="func">
         *   a string that uniquely characterizes the multi-cell weighing scale sensor, for instance
         *   <c>YWMBRDG1.multiCellWeighScale</c>.
         * </param>
         * <returns>
         *   a <c>YMultiCellWeighScale</c> object allowing you to drive the multi-cell weighing scale sensor.
         * </returns>
         */
        public static YMultiCellWeighScale FindMultiCellWeighScale(string func)
        {
            YMultiCellWeighScale obj;

            obj = (YMultiCellWeighScale)YFunction._FindFromCache("MultiCellWeighScale", func);
            if (obj == null)
            {
                obj = new YMultiCellWeighScale(func);
                YFunction._AddToCache("MultiCellWeighScale", func, obj);
            }
            return(obj);
        }
예제 #4
0
        /**
         * <summary>
         *   Retrieves an analog input for a given identifier.
         * <para>
         *   The identifier can be specified using several formats:
         * </para>
         * <para>
         * </para>
         * <para>
         *   - FunctionLogicalName
         * </para>
         * <para>
         *   - ModuleSerialNumber.FunctionIdentifier
         * </para>
         * <para>
         *   - ModuleSerialNumber.FunctionLogicalName
         * </para>
         * <para>
         *   - ModuleLogicalName.FunctionIdentifier
         * </para>
         * <para>
         *   - ModuleLogicalName.FunctionLogicalName
         * </para>
         * <para>
         * </para>
         * <para>
         *   This function does not require that the analog input is online at the time
         *   it is invoked. The returned object is nevertheless valid.
         *   Use the method <c>YAnButton.isOnline()</c> to test if the analog input is
         *   indeed online at a given time. In case of ambiguity when looking for
         *   an analog input by logical name, no error is notified: the first instance
         *   found is returned. The search is performed first by hardware name,
         *   then by logical name.
         * </para>
         * <para>
         *   If a call to this object's is_online() method returns FALSE although
         *   you are certain that the matching device is plugged, make sure that you did
         *   call registerHub() at application initialization time.
         * </para>
         * <para>
         * </para>
         * </summary>
         * <param name="func">
         *   a string that uniquely characterizes the analog input
         * </param>
         * <returns>
         *   a <c>YAnButton</c> object allowing you to drive the analog input.
         * </returns>
         */
        public static YAnButton FindAnButton(string func)
        {
            YAnButton obj;

            obj = (YAnButton)YFunction._FindFromCache("AnButton", func);
            if (obj == null)
            {
                obj = new YAnButton(func);
                YFunction._AddToCache("AnButton", func, obj);
            }
            return(obj);
        }
예제 #5
0
        /**
         * <summary>
         *   Retrieves a temperature sensor for a given identifier.
         * <para>
         *   The identifier can be specified using several formats:
         * </para>
         * <para>
         * </para>
         * <para>
         *   - FunctionLogicalName
         * </para>
         * <para>
         *   - ModuleSerialNumber.FunctionIdentifier
         * </para>
         * <para>
         *   - ModuleSerialNumber.FunctionLogicalName
         * </para>
         * <para>
         *   - ModuleLogicalName.FunctionIdentifier
         * </para>
         * <para>
         *   - ModuleLogicalName.FunctionLogicalName
         * </para>
         * <para>
         * </para>
         * <para>
         *   This function does not require that the temperature sensor is online at the time
         *   it is invoked. The returned object is nevertheless valid.
         *   Use the method <c>YTemperature.isOnline()</c> to test if the temperature sensor is
         *   indeed online at a given time. In case of ambiguity when looking for
         *   a temperature sensor by logical name, no error is notified: the first instance
         *   found is returned. The search is performed first by hardware name,
         *   then by logical name.
         * </para>
         * <para>
         *   If a call to this object's is_online() method returns FALSE although
         *   you are certain that the matching device is plugged, make sure that you did
         *   call registerHub() at application initialization time.
         * </para>
         * <para>
         * </para>
         * </summary>
         * <param name="func">
         *   a string that uniquely characterizes the temperature sensor, for instance
         *   <c>METEOMK2.temperature</c>.
         * </param>
         * <returns>
         *   a <c>YTemperature</c> object allowing you to drive the temperature sensor.
         * </returns>
         */
        public static YTemperature FindTemperature(string func)
        {
            YTemperature obj;

            obj = (YTemperature)YFunction._FindFromCache("Temperature", func);
            if (obj == null)
            {
                obj = new YTemperature(func);
                YFunction._AddToCache("Temperature", func, obj);
            }
            return(obj);
        }
예제 #6
0
        /**
         * <summary>
         *   Retrieves a data logger for a given identifier.
         * <para>
         *   The identifier can be specified using several formats:
         * </para>
         * <para>
         * </para>
         * <para>
         *   - FunctionLogicalName
         * </para>
         * <para>
         *   - ModuleSerialNumber.FunctionIdentifier
         * </para>
         * <para>
         *   - ModuleSerialNumber.FunctionLogicalName
         * </para>
         * <para>
         *   - ModuleLogicalName.FunctionIdentifier
         * </para>
         * <para>
         *   - ModuleLogicalName.FunctionLogicalName
         * </para>
         * <para>
         * </para>
         * <para>
         *   This function does not require that the data logger is online at the time
         *   it is invoked. The returned object is nevertheless valid.
         *   Use the method <c>YDataLogger.isOnline()</c> to test if the data logger is
         *   indeed online at a given time. In case of ambiguity when looking for
         *   a data logger by logical name, no error is notified: the first instance
         *   found is returned. The search is performed first by hardware name,
         *   then by logical name.
         * </para>
         * <para>
         *   If a call to this object's is_online() method returns FALSE although
         *   you are certain that the matching device is plugged, make sure that you did
         *   call registerHub() at application initialization time.
         * </para>
         * <para>
         * </para>
         * </summary>
         * <param name="func">
         *   a string that uniquely characterizes the data logger, for instance
         *   <c>RX420MA1.dataLogger</c>.
         * </param>
         * <returns>
         *   a <c>YDataLogger</c> object allowing you to drive the data logger.
         * </returns>
         */
        public static YDataLogger FindDataLogger(string func)
        {
            YDataLogger obj;

            obj = (YDataLogger)YFunction._FindFromCache("DataLogger", func);
            if (obj == null)
            {
                obj = new YDataLogger(func);
                YFunction._AddToCache("DataLogger", func, obj);
            }
            return(obj);
        }
예제 #7
0
        /**
         * <summary>
         *   Retrieves a light sensor for a given identifier.
         * <para>
         *   The identifier can be specified using several formats:
         * </para>
         * <para>
         * </para>
         * <para>
         *   - FunctionLogicalName
         * </para>
         * <para>
         *   - ModuleSerialNumber.FunctionIdentifier
         * </para>
         * <para>
         *   - ModuleSerialNumber.FunctionLogicalName
         * </para>
         * <para>
         *   - ModuleLogicalName.FunctionIdentifier
         * </para>
         * <para>
         *   - ModuleLogicalName.FunctionLogicalName
         * </para>
         * <para>
         * </para>
         * <para>
         *   This function does not require that the light sensor is online at the time
         *   it is invoked. The returned object is nevertheless valid.
         *   Use the method <c>YLightSensor.isOnline()</c> to test if the light sensor is
         *   indeed online at a given time. In case of ambiguity when looking for
         *   a light sensor by logical name, no error is notified: the first instance
         *   found is returned. The search is performed first by hardware name,
         *   then by logical name.
         * </para>
         * <para>
         *   If a call to this object's is_online() method returns FALSE although
         *   you are certain that the matching device is plugged, make sure that you did
         *   call registerHub() at application initialization time.
         * </para>
         * <para>
         * </para>
         * </summary>
         * <param name="func">
         *   a string that uniquely characterizes the light sensor
         * </param>
         * <returns>
         *   a <c>YLightSensor</c> object allowing you to drive the light sensor.
         * </returns>
         */
        public static YLightSensor FindLightSensor(string func)
        {
            YLightSensor obj;

            obj = (YLightSensor)YFunction._FindFromCache("LightSensor", func);
            if (obj == null)
            {
                obj = new YLightSensor(func);
                YFunction._AddToCache("LightSensor", func, obj);
            }
            return(obj);
        }
        /**
         * <summary>
         *   Retrieves a segmented display for a given identifier.
         * <para>
         *   The identifier can be specified using several formats:
         * </para>
         * <para>
         * </para>
         * <para>
         *   - FunctionLogicalName
         * </para>
         * <para>
         *   - ModuleSerialNumber.FunctionIdentifier
         * </para>
         * <para>
         *   - ModuleSerialNumber.FunctionLogicalName
         * </para>
         * <para>
         *   - ModuleLogicalName.FunctionIdentifier
         * </para>
         * <para>
         *   - ModuleLogicalName.FunctionLogicalName
         * </para>
         * <para>
         * </para>
         * <para>
         *   This function does not require that the segmented displays is online at the time
         *   it is invoked. The returned object is nevertheless valid.
         *   Use the method <c>YSegmentedDisplay.isOnline()</c> to test if the segmented displays is
         *   indeed online at a given time. In case of ambiguity when looking for
         *   a segmented display by logical name, no error is notified: the first instance
         *   found is returned. The search is performed first by hardware name,
         *   then by logical name.
         * </para>
         * <para>
         *   If a call to this object's is_online() method returns FALSE although
         *   you are certain that the matching device is plugged, make sure that you did
         *   call registerHub() at application initialization time.
         * </para>
         * <para>
         * </para>
         * </summary>
         * <param name="func">
         *   a string that uniquely characterizes the segmented displays
         * </param>
         * <returns>
         *   a <c>YSegmentedDisplay</c> object allowing you to drive the segmented displays.
         * </returns>
         */
        public static YSegmentedDisplay FindSegmentedDisplay(string func)
        {
            YSegmentedDisplay obj;

            obj = (YSegmentedDisplay)YFunction._FindFromCache("SegmentedDisplay", func);
            if (obj == null)
            {
                obj = new YSegmentedDisplay(func);
                YFunction._AddToCache("SegmentedDisplay", func, obj);
            }
            return(obj);
        }
예제 #9
0
        /**
         * <summary>
         *   Retrieves a buzzer for a given identifier.
         * <para>
         *   The identifier can be specified using several formats:
         * </para>
         * <para>
         * </para>
         * <para>
         *   - FunctionLogicalName
         * </para>
         * <para>
         *   - ModuleSerialNumber.FunctionIdentifier
         * </para>
         * <para>
         *   - ModuleSerialNumber.FunctionLogicalName
         * </para>
         * <para>
         *   - ModuleLogicalName.FunctionIdentifier
         * </para>
         * <para>
         *   - ModuleLogicalName.FunctionLogicalName
         * </para>
         * <para>
         * </para>
         * <para>
         *   This function does not require that the buzzer is online at the time
         *   it is invoked. The returned object is nevertheless valid.
         *   Use the method <c>YBuzzer.isOnline()</c> to test if the buzzer is
         *   indeed online at a given time. In case of ambiguity when looking for
         *   a buzzer by logical name, no error is notified: the first instance
         *   found is returned. The search is performed first by hardware name,
         *   then by logical name.
         * </para>
         * <para>
         *   If a call to this object's is_online() method returns FALSE although
         *   you are certain that the matching device is plugged, make sure that you did
         *   call registerHub() at application initialization time.
         * </para>
         * <para>
         * </para>
         * </summary>
         * <param name="func">
         *   a string that uniquely characterizes the buzzer
         * </param>
         * <returns>
         *   a <c>YBuzzer</c> object allowing you to drive the buzzer.
         * </returns>
         */
        public static YBuzzer FindBuzzer(string func)
        {
            YBuzzer obj;

            obj = (YBuzzer)YFunction._FindFromCache("Buzzer", func);
            if (obj == null)
            {
                obj = new YBuzzer(func);
                YFunction._AddToCache("Buzzer", func, obj);
            }
            return(obj);
        }
예제 #10
0
        /**
         * <summary>
         *   Retrieves a proximity sensor for a given identifier.
         * <para>
         *   The identifier can be specified using several formats:
         * </para>
         * <para>
         * </para>
         * <para>
         *   - FunctionLogicalName
         * </para>
         * <para>
         *   - ModuleSerialNumber.FunctionIdentifier
         * </para>
         * <para>
         *   - ModuleSerialNumber.FunctionLogicalName
         * </para>
         * <para>
         *   - ModuleLogicalName.FunctionIdentifier
         * </para>
         * <para>
         *   - ModuleLogicalName.FunctionLogicalName
         * </para>
         * <para>
         * </para>
         * <para>
         *   This function does not require that the proximity sensor is online at the time
         *   it is invoked. The returned object is nevertheless valid.
         *   Use the method <c>YProximity.isOnline()</c> to test if the proximity sensor is
         *   indeed online at a given time. In case of ambiguity when looking for
         *   a proximity sensor by logical name, no error is notified: the first instance
         *   found is returned. The search is performed first by hardware name,
         *   then by logical name.
         * </para>
         * <para>
         *   If a call to this object's is_online() method returns FALSE although
         *   you are certain that the matching device is plugged, make sure that you did
         *   call registerHub() at application initialization time.
         * </para>
         * <para>
         * </para>
         * </summary>
         * <param name="func">
         *   a string that uniquely characterizes the proximity sensor
         * </param>
         * <returns>
         *   a <c>YProximity</c> object allowing you to drive the proximity sensor.
         * </returns>
         */
        public static YProximity FindProximity(string func)
        {
            YProximity obj;

            obj = (YProximity)YFunction._FindFromCache("Proximity", func);
            if (obj == null)
            {
                obj = new YProximity(func);
                YFunction._AddToCache("Proximity", func, obj);
            }
            return(obj);
        }
예제 #11
0
        /**
         * <summary>
         *   Retrieves a watchdog for a given identifier.
         * <para>
         *   The identifier can be specified using several formats:
         * </para>
         * <para>
         * </para>
         * <para>
         *   - FunctionLogicalName
         * </para>
         * <para>
         *   - ModuleSerialNumber.FunctionIdentifier
         * </para>
         * <para>
         *   - ModuleSerialNumber.FunctionLogicalName
         * </para>
         * <para>
         *   - ModuleLogicalName.FunctionIdentifier
         * </para>
         * <para>
         *   - ModuleLogicalName.FunctionLogicalName
         * </para>
         * <para>
         * </para>
         * <para>
         *   This function does not require that the watchdog is online at the time
         *   it is invoked. The returned object is nevertheless valid.
         *   Use the method <c>YWatchdog.isOnline()</c> to test if the watchdog is
         *   indeed online at a given time. In case of ambiguity when looking for
         *   a watchdog by logical name, no error is notified: the first instance
         *   found is returned. The search is performed first by hardware name,
         *   then by logical name.
         * </para>
         * <para>
         *   If a call to this object's is_online() method returns FALSE although
         *   you are certain that the matching device is plugged, make sure that you did
         *   call registerHub() at application initialization time.
         * </para>
         * <para>
         * </para>
         * </summary>
         * <param name="func">
         *   a string that uniquely characterizes the watchdog
         * </param>
         * <returns>
         *   a <c>YWatchdog</c> object allowing you to drive the watchdog.
         * </returns>
         */
        public static YWatchdog FindWatchdog(string func)
        {
            YWatchdog obj;

            obj = (YWatchdog)YFunction._FindFromCache("Watchdog", func);
            if (obj == null)
            {
                obj = new YWatchdog(func);
                YFunction._AddToCache("Watchdog", func, obj);
            }
            return(obj);
        }
예제 #12
0
        /**
         * <summary>
         *   Retrieves a quadrature decoder for a given identifier.
         * <para>
         *   The identifier can be specified using several formats:
         * </para>
         * <para>
         * </para>
         * <para>
         *   - FunctionLogicalName
         * </para>
         * <para>
         *   - ModuleSerialNumber.FunctionIdentifier
         * </para>
         * <para>
         *   - ModuleSerialNumber.FunctionLogicalName
         * </para>
         * <para>
         *   - ModuleLogicalName.FunctionIdentifier
         * </para>
         * <para>
         *   - ModuleLogicalName.FunctionLogicalName
         * </para>
         * <para>
         * </para>
         * <para>
         *   This function does not require that the quadrature decoder is online at the time
         *   it is invoked. The returned object is nevertheless valid.
         *   Use the method <c>YQuadratureDecoder.isOnline()</c> to test if the quadrature decoder is
         *   indeed online at a given time. In case of ambiguity when looking for
         *   a quadrature decoder by logical name, no error is notified: the first instance
         *   found is returned. The search is performed first by hardware name,
         *   then by logical name.
         * </para>
         * <para>
         *   If a call to this object's is_online() method returns FALSE although
         *   you are certain that the matching device is plugged, make sure that you did
         *   call registerHub() at application initialization time.
         * </para>
         * <para>
         * </para>
         * </summary>
         * <param name="func">
         *   a string that uniquely characterizes the quadrature decoder, for instance
         *   <c>YPWMRX01.quadratureDecoder</c>.
         * </param>
         * <returns>
         *   a <c>YQuadratureDecoder</c> object allowing you to drive the quadrature decoder.
         * </returns>
         */
        public static YQuadratureDecoder FindQuadratureDecoder(string func)
        {
            YQuadratureDecoder obj;

            obj = (YQuadratureDecoder)YFunction._FindFromCache("QuadratureDecoder", func);
            if (obj == null)
            {
                obj = new YQuadratureDecoder(func);
                YFunction._AddToCache("QuadratureDecoder", func, obj);
            }
            return(obj);
        }
        /**
         * <summary>
         *   Retrieves a MessageBox interface for a given identifier.
         * <para>
         *   The identifier can be specified using several formats:
         * </para>
         * <para>
         * </para>
         * <para>
         *   - FunctionLogicalName
         * </para>
         * <para>
         *   - ModuleSerialNumber.FunctionIdentifier
         * </para>
         * <para>
         *   - ModuleSerialNumber.FunctionLogicalName
         * </para>
         * <para>
         *   - ModuleLogicalName.FunctionIdentifier
         * </para>
         * <para>
         *   - ModuleLogicalName.FunctionLogicalName
         * </para>
         * <para>
         * </para>
         * <para>
         *   This function does not require that the MessageBox interface is online at the time
         *   it is invoked. The returned object is nevertheless valid.
         *   Use the method <c>YMessageBox.isOnline()</c> to test if the MessageBox interface is
         *   indeed online at a given time. In case of ambiguity when looking for
         *   a MessageBox interface by logical name, no error is notified: the first instance
         *   found is returned. The search is performed first by hardware name,
         *   then by logical name.
         * </para>
         * <para>
         *   If a call to this object's is_online() method returns FALSE although
         *   you are certain that the matching device is plugged, make sure that you did
         *   call registerHub() at application initialization time.
         * </para>
         * <para>
         * </para>
         * </summary>
         * <param name="func">
         *   a string that uniquely characterizes the MessageBox interface
         * </param>
         * <returns>
         *   a <c>YMessageBox</c> object allowing you to drive the MessageBox interface.
         * </returns>
         */
        public static YMessageBox FindMessageBox(string func)
        {
            YMessageBox obj;

            obj = (YMessageBox)YFunction._FindFromCache("MessageBox", func);
            if (obj == null)
            {
                obj = new YMessageBox(func);
                YFunction._AddToCache("MessageBox", func, obj);
            }
            return(obj);
        }
예제 #14
0
        /**
         * <summary>
         *   Retrieves a voltage sensor for a given identifier.
         * <para>
         *   The identifier can be specified using several formats:
         * </para>
         * <para>
         * </para>
         * <para>
         *   - FunctionLogicalName
         * </para>
         * <para>
         *   - ModuleSerialNumber.FunctionIdentifier
         * </para>
         * <para>
         *   - ModuleSerialNumber.FunctionLogicalName
         * </para>
         * <para>
         *   - ModuleLogicalName.FunctionIdentifier
         * </para>
         * <para>
         *   - ModuleLogicalName.FunctionLogicalName
         * </para>
         * <para>
         * </para>
         * <para>
         *   This function does not require that the voltage sensor is online at the time
         *   it is invoked. The returned object is nevertheless valid.
         *   Use the method <c>YVoltage.isOnline()</c> to test if the voltage sensor is
         *   indeed online at a given time. In case of ambiguity when looking for
         *   a voltage sensor by logical name, no error is notified: the first instance
         *   found is returned. The search is performed first by hardware name,
         *   then by logical name.
         * </para>
         * <para>
         *   If a call to this object's is_online() method returns FALSE although
         *   you are certain that the matching device is plugged, make sure that you did
         *   call registerHub() at application initialization time.
         * </para>
         * <para>
         * </para>
         * </summary>
         * <param name="func">
         *   a string that uniquely characterizes the voltage sensor, for instance
         *   <c>MOTORCTL.voltage</c>.
         * </param>
         * <returns>
         *   a <c>YVoltage</c> object allowing you to drive the voltage sensor.
         * </returns>
         */
        public static YVoltage FindVoltage(string func)
        {
            YVoltage obj;

            obj = (YVoltage)YFunction._FindFromCache("Voltage", func);
            if (obj == null)
            {
                obj = new YVoltage(func);
                YFunction._AddToCache("Voltage", func, obj);
            }
            return(obj);
        }
예제 #15
0
        /**
         * <summary>
         *   Retrieves a pressure sensor for a given identifier.
         * <para>
         *   The identifier can be specified using several formats:
         * </para>
         * <para>
         * </para>
         * <para>
         *   - FunctionLogicalName
         * </para>
         * <para>
         *   - ModuleSerialNumber.FunctionIdentifier
         * </para>
         * <para>
         *   - ModuleSerialNumber.FunctionLogicalName
         * </para>
         * <para>
         *   - ModuleLogicalName.FunctionIdentifier
         * </para>
         * <para>
         *   - ModuleLogicalName.FunctionLogicalName
         * </para>
         * <para>
         * </para>
         * <para>
         *   This function does not require that the pressure sensor is online at the time
         *   it is invoked. The returned object is nevertheless valid.
         *   Use the method <c>YPressure.isOnline()</c> to test if the pressure sensor is
         *   indeed online at a given time. In case of ambiguity when looking for
         *   a pressure sensor by logical name, no error is notified: the first instance
         *   found is returned. The search is performed first by hardware name,
         *   then by logical name.
         * </para>
         * <para>
         *   If a call to this object's is_online() method returns FALSE although
         *   you are certain that the matching device is plugged, make sure that you did
         *   call registerHub() at application initialization time.
         * </para>
         * <para>
         * </para>
         * </summary>
         * <param name="func">
         *   a string that uniquely characterizes the pressure sensor
         * </param>
         * <returns>
         *   a <c>YPressure</c> object allowing you to drive the pressure sensor.
         * </returns>
         */
        public static YPressure FindPressure(string func)
        {
            YPressure obj;

            obj = (YPressure)YFunction._FindFromCache("Pressure", func);
            if (obj == null)
            {
                obj = new YPressure(func);
                YFunction._AddToCache("Pressure", func, obj);
            }
            return(obj);
        }
예제 #16
0
        /**
         * <summary>
         *   Retrieves a latitude sensor for a given identifier.
         * <para>
         *   The identifier can be specified using several formats:
         * </para>
         * <para>
         * </para>
         * <para>
         *   - FunctionLogicalName
         * </para>
         * <para>
         *   - ModuleSerialNumber.FunctionIdentifier
         * </para>
         * <para>
         *   - ModuleSerialNumber.FunctionLogicalName
         * </para>
         * <para>
         *   - ModuleLogicalName.FunctionIdentifier
         * </para>
         * <para>
         *   - ModuleLogicalName.FunctionLogicalName
         * </para>
         * <para>
         * </para>
         * <para>
         *   This function does not require that the latitude sensor is online at the time
         *   it is invoked. The returned object is nevertheless valid.
         *   Use the method <c>YLatitude.isOnline()</c> to test if the latitude sensor is
         *   indeed online at a given time. In case of ambiguity when looking for
         *   a latitude sensor by logical name, no error is notified: the first instance
         *   found is returned. The search is performed first by hardware name,
         *   then by logical name.
         * </para>
         * <para>
         *   If a call to this object's is_online() method returns FALSE although
         *   you are certain that the matching device is plugged, make sure that you did
         *   call registerHub() at application initialization time.
         * </para>
         * <para>
         * </para>
         * </summary>
         * <param name="func">
         *   a string that uniquely characterizes the latitude sensor
         * </param>
         * <returns>
         *   a <c>YLatitude</c> object allowing you to drive the latitude sensor.
         * </returns>
         */
        public static YLatitude FindLatitude(string func)
        {
            YLatitude obj;

            obj = (YLatitude)YFunction._FindFromCache("Latitude", func);
            if (obj == null)
            {
                obj = new YLatitude(func);
                YFunction._AddToCache("Latitude", func, obj);
            }
            return(obj);
        }
        /**
         * <summary>
         *   Retrieves a CO2 sensor for a given identifier.
         * <para>
         *   The identifier can be specified using several formats:
         * </para>
         * <para>
         * </para>
         * <para>
         *   - FunctionLogicalName
         * </para>
         * <para>
         *   - ModuleSerialNumber.FunctionIdentifier
         * </para>
         * <para>
         *   - ModuleSerialNumber.FunctionLogicalName
         * </para>
         * <para>
         *   - ModuleLogicalName.FunctionIdentifier
         * </para>
         * <para>
         *   - ModuleLogicalName.FunctionLogicalName
         * </para>
         * <para>
         * </para>
         * <para>
         *   This function does not require that the CO2 sensor is online at the time
         *   it is invoked. The returned object is nevertheless valid.
         *   Use the method <c>YCarbonDioxide.isOnline()</c> to test if the CO2 sensor is
         *   indeed online at a given time. In case of ambiguity when looking for
         *   a CO2 sensor by logical name, no error is notified: the first instance
         *   found is returned. The search is performed first by hardware name,
         *   then by logical name.
         * </para>
         * <para>
         *   If a call to this object's is_online() method returns FALSE although
         *   you are certain that the matching device is plugged, make sure that you did
         *   call registerHub() at application initialization time.
         * </para>
         * <para>
         * </para>
         * </summary>
         * <param name="func">
         *   a string that uniquely characterizes the CO2 sensor
         * </param>
         * <returns>
         *   a <c>YCarbonDioxide</c> object allowing you to drive the CO2 sensor.
         * </returns>
         */
        public static YCarbonDioxide FindCarbonDioxide(string func)
        {
            YCarbonDioxide obj;

            obj = (YCarbonDioxide)YFunction._FindFromCache("CarbonDioxide", func);
            if (obj == null)
            {
                obj = new YCarbonDioxide(func);
                YFunction._AddToCache("CarbonDioxide", func, obj);
            }
            return(obj);
        }
예제 #18
0
        /**
         * <summary>
         *   Retrieves an audio output for a given identifier.
         * <para>
         *   The identifier can be specified using several formats:
         * </para>
         * <para>
         * </para>
         * <para>
         *   - FunctionLogicalName
         * </para>
         * <para>
         *   - ModuleSerialNumber.FunctionIdentifier
         * </para>
         * <para>
         *   - ModuleSerialNumber.FunctionLogicalName
         * </para>
         * <para>
         *   - ModuleLogicalName.FunctionIdentifier
         * </para>
         * <para>
         *   - ModuleLogicalName.FunctionLogicalName
         * </para>
         * <para>
         * </para>
         * <para>
         *   This function does not require that the audio output is online at the time
         *   it is invoked. The returned object is nevertheless valid.
         *   Use the method <c>YAudioOut.isOnline()</c> to test if the audio output is
         *   indeed online at a given time. In case of ambiguity when looking for
         *   an audio output by logical name, no error is notified: the first instance
         *   found is returned. The search is performed first by hardware name,
         *   then by logical name.
         * </para>
         * <para>
         *   If a call to this object's is_online() method returns FALSE although
         *   you are certain that the matching device is plugged, make sure that you did
         *   call registerHub() at application initialization time.
         * </para>
         * <para>
         * </para>
         * </summary>
         * <param name="func">
         *   a string that uniquely characterizes the audio output
         * </param>
         * <returns>
         *   a <c>YAudioOut</c> object allowing you to drive the audio output.
         * </returns>
         */
        public static YAudioOut FindAudioOut(string func)
        {
            YAudioOut obj;

            obj = (YAudioOut)YFunction._FindFromCache("AudioOut", func);
            if (obj == null)
            {
                obj = new YAudioOut(func);
                YFunction._AddToCache("AudioOut", func, obj);
            }
            return(obj);
        }
예제 #19
0
        /**
         * <summary>
         *   Retrieves a compass for a given identifier.
         * <para>
         *   The identifier can be specified using several formats:
         * </para>
         * <para>
         * </para>
         * <para>
         *   - FunctionLogicalName
         * </para>
         * <para>
         *   - ModuleSerialNumber.FunctionIdentifier
         * </para>
         * <para>
         *   - ModuleSerialNumber.FunctionLogicalName
         * </para>
         * <para>
         *   - ModuleLogicalName.FunctionIdentifier
         * </para>
         * <para>
         *   - ModuleLogicalName.FunctionLogicalName
         * </para>
         * <para>
         * </para>
         * <para>
         *   This function does not require that the compass is online at the time
         *   it is invoked. The returned object is nevertheless valid.
         *   Use the method <c>YCompass.isOnline()</c> to test if the compass is
         *   indeed online at a given time. In case of ambiguity when looking for
         *   a compass by logical name, no error is notified: the first instance
         *   found is returned. The search is performed first by hardware name,
         *   then by logical name.
         * </para>
         * <para>
         *   If a call to this object's is_online() method returns FALSE although
         *   you are certain that the matching device is plugged, make sure that you did
         *   call registerHub() at application initialization time.
         * </para>
         * <para>
         * </para>
         * </summary>
         * <param name="func">
         *   a string that uniquely characterizes the compass
         * </param>
         * <returns>
         *   a <c>YCompass</c> object allowing you to drive the compass.
         * </returns>
         */
        public static YCompass FindCompass(string func)
        {
            YCompass obj;

            obj = (YCompass)YFunction._FindFromCache("Compass", func);
            if (obj == null)
            {
                obj = new YCompass(func);
                YFunction._AddToCache("Compass", func, obj);
            }
            return(obj);
        }
예제 #20
0
        /**
         * <summary>
         *   Retrieves a power output for a given identifier.
         * <para>
         *   The identifier can be specified using several formats:
         * </para>
         * <para>
         * </para>
         * <para>
         *   - FunctionLogicalName
         * </para>
         * <para>
         *   - ModuleSerialNumber.FunctionIdentifier
         * </para>
         * <para>
         *   - ModuleSerialNumber.FunctionLogicalName
         * </para>
         * <para>
         *   - ModuleLogicalName.FunctionIdentifier
         * </para>
         * <para>
         *   - ModuleLogicalName.FunctionLogicalName
         * </para>
         * <para>
         * </para>
         * <para>
         *   This function does not require that the power output is online at the time
         *   it is invoked. The returned object is nevertheless valid.
         *   Use the method <c>YPowerOutput.isOnline()</c> to test if the power output is
         *   indeed online at a given time. In case of ambiguity when looking for
         *   a power output by logical name, no error is notified: the first instance
         *   found is returned. The search is performed first by hardware name,
         *   then by logical name.
         * </para>
         * <para>
         *   If a call to this object's is_online() method returns FALSE although
         *   you are certain that the matching device is plugged, make sure that you did
         *   call registerHub() at application initialization time.
         * </para>
         * <para>
         * </para>
         * </summary>
         * <param name="func">
         *   a string that uniquely characterizes the power output, for instance
         *   <c>YI2CMK01.powerOutput</c>.
         * </param>
         * <returns>
         *   a <c>YPowerOutput</c> object allowing you to drive the power output.
         * </returns>
         */
        public static YPowerOutput FindPowerOutput(string func)
        {
            YPowerOutput obj;

            obj = (YPowerOutput)YFunction._FindFromCache("PowerOutput", func);
            if (obj == null)
            {
                obj = new YPowerOutput(func);
                YFunction._AddToCache("PowerOutput", func, obj);
            }
            return(obj);
        }
예제 #21
0
        /**
         * <summary>
         *   Retrieves a 4-20mA output for a given identifier.
         * <para>
         *   The identifier can be specified using several formats:
         * </para>
         * <para>
         * </para>
         * <para>
         *   - FunctionLogicalName
         * </para>
         * <para>
         *   - ModuleSerialNumber.FunctionIdentifier
         * </para>
         * <para>
         *   - ModuleSerialNumber.FunctionLogicalName
         * </para>
         * <para>
         *   - ModuleLogicalName.FunctionIdentifier
         * </para>
         * <para>
         *   - ModuleLogicalName.FunctionLogicalName
         * </para>
         * <para>
         * </para>
         * <para>
         *   This function does not require that the 4-20mA output is online at the time
         *   it is invoked. The returned object is nevertheless valid.
         *   Use the method <c>YCurrentLoopOutput.isOnline()</c> to test if the 4-20mA output is
         *   indeed online at a given time. In case of ambiguity when looking for
         *   a 4-20mA output by logical name, no error is notified: the first instance
         *   found is returned. The search is performed first by hardware name,
         *   then by logical name.
         * </para>
         * <para>
         *   If a call to this object's is_online() method returns FALSE although
         *   you are certain that the matching device is plugged, make sure that you did
         *   call registerHub() at application initialization time.
         * </para>
         * <para>
         * </para>
         * </summary>
         * <param name="func">
         *   a string that uniquely characterizes the 4-20mA output, for instance
         *   <c>TX420MA1.currentLoopOutput</c>.
         * </param>
         * <returns>
         *   a <c>YCurrentLoopOutput</c> object allowing you to drive the 4-20mA output.
         * </returns>
         */
        public static YCurrentLoopOutput FindCurrentLoopOutput(string func)
        {
            YCurrentLoopOutput obj;

            obj = (YCurrentLoopOutput)YFunction._FindFromCache("CurrentLoopOutput", func);
            if (obj == null)
            {
                obj = new YCurrentLoopOutput(func);
                YFunction._AddToCache("CurrentLoopOutput", func, obj);
            }
            return(obj);
        }
예제 #22
0
        /**
         * <summary>
         *   Retrieves a relay for a given identifier.
         * <para>
         *   The identifier can be specified using several formats:
         * </para>
         * <para>
         * </para>
         * <para>
         *   - FunctionLogicalName
         * </para>
         * <para>
         *   - ModuleSerialNumber.FunctionIdentifier
         * </para>
         * <para>
         *   - ModuleSerialNumber.FunctionLogicalName
         * </para>
         * <para>
         *   - ModuleLogicalName.FunctionIdentifier
         * </para>
         * <para>
         *   - ModuleLogicalName.FunctionLogicalName
         * </para>
         * <para>
         * </para>
         * <para>
         *   This function does not require that the relay is online at the time
         *   it is invoked. The returned object is nevertheless valid.
         *   Use the method <c>YRelay.isOnline()</c> to test if the relay is
         *   indeed online at a given time. In case of ambiguity when looking for
         *   a relay by logical name, no error is notified: the first instance
         *   found is returned. The search is performed first by hardware name,
         *   then by logical name.
         * </para>
         * <para>
         *   If a call to this object's is_online() method returns FALSE although
         *   you are certain that the matching device is plugged, make sure that you did
         *   call registerHub() at application initialization time.
         * </para>
         * <para>
         * </para>
         * </summary>
         * <param name="func">
         *   a string that uniquely characterizes the relay, for instance
         *   <c>YLTCHRL1.relay1</c>.
         * </param>
         * <returns>
         *   a <c>YRelay</c> object allowing you to drive the relay.
         * </returns>
         */
        public static YRelay FindRelay(string func)
        {
            YRelay obj;

            obj = (YRelay)YFunction._FindFromCache("Relay", func);
            if (obj == null)
            {
                obj = new YRelay(func);
                YFunction._AddToCache("Relay", func, obj);
            }
            return(obj);
        }
예제 #23
0
        /**
         * <summary>
         *   Retrieves a PWM generator power source for a given identifier.
         * <para>
         *   The identifier can be specified using several formats:
         * </para>
         * <para>
         * </para>
         * <para>
         *   - FunctionLogicalName
         * </para>
         * <para>
         *   - ModuleSerialNumber.FunctionIdentifier
         * </para>
         * <para>
         *   - ModuleSerialNumber.FunctionLogicalName
         * </para>
         * <para>
         *   - ModuleLogicalName.FunctionIdentifier
         * </para>
         * <para>
         *   - ModuleLogicalName.FunctionLogicalName
         * </para>
         * <para>
         * </para>
         * <para>
         *   This function does not require that the PWM generator power source is online at the time
         *   it is invoked. The returned object is nevertheless valid.
         *   Use the method <c>YPwmPowerSource.isOnline()</c> to test if the PWM generator power source is
         *   indeed online at a given time. In case of ambiguity when looking for
         *   a PWM generator power source by logical name, no error is notified: the first instance
         *   found is returned. The search is performed first by hardware name,
         *   then by logical name.
         * </para>
         * <para>
         *   If a call to this object's is_online() method returns FALSE although
         *   you are certain that the matching device is plugged, make sure that you did
         *   call registerHub() at application initialization time.
         * </para>
         * <para>
         * </para>
         * </summary>
         * <param name="func">
         *   a string that uniquely characterizes the PWM generator power source, for instance
         *   <c>YPWMTX01.pwmPowerSource</c>.
         * </param>
         * <returns>
         *   a <c>YPwmPowerSource</c> object allowing you to drive the PWM generator power source.
         * </returns>
         */
        public static YPwmPowerSource FindPwmPowerSource(string func)
        {
            YPwmPowerSource obj;

            obj = (YPwmPowerSource)YFunction._FindFromCache("PwmPowerSource", func);
            if (obj == null)
            {
                obj = new YPwmPowerSource(func);
                YFunction._AddToCache("PwmPowerSource", func, obj);
            }
            return(obj);
        }
예제 #24
0
        /**
         * <summary>
         *   Retrieves a range finder for a given identifier.
         * <para>
         *   The identifier can be specified using several formats:
         * </para>
         * <para>
         * </para>
         * <para>
         *   - FunctionLogicalName
         * </para>
         * <para>
         *   - ModuleSerialNumber.FunctionIdentifier
         * </para>
         * <para>
         *   - ModuleSerialNumber.FunctionLogicalName
         * </para>
         * <para>
         *   - ModuleLogicalName.FunctionIdentifier
         * </para>
         * <para>
         *   - ModuleLogicalName.FunctionLogicalName
         * </para>
         * <para>
         * </para>
         * <para>
         *   This function does not require that the range finder is online at the time
         *   it is invoked. The returned object is nevertheless valid.
         *   Use the method <c>YRangeFinder.isOnline()</c> to test if the range finder is
         *   indeed online at a given time. In case of ambiguity when looking for
         *   a range finder by logical name, no error is notified: the first instance
         *   found is returned. The search is performed first by hardware name,
         *   then by logical name.
         * </para>
         * <para>
         *   If a call to this object's is_online() method returns FALSE although
         *   you are certain that the matching device is plugged, make sure that you did
         *   call registerHub() at application initialization time.
         * </para>
         * <para>
         * </para>
         * </summary>
         * <param name="func">
         *   a string that uniquely characterizes the range finder, for instance
         *   <c>YRNGFND1.rangeFinder1</c>.
         * </param>
         * <returns>
         *   a <c>YRangeFinder</c> object allowing you to drive the range finder.
         * </returns>
         */
        public static YRangeFinder FindRangeFinder(string func)
        {
            YRangeFinder obj;

            obj = (YRangeFinder)YFunction._FindFromCache("RangeFinder", func);
            if (obj == null)
            {
                obj = new YRangeFinder(func);
                YFunction._AddToCache("RangeFinder", func, obj);
            }
            return(obj);
        }
예제 #25
0
        /**
         * <summary>
         *   Retrieves a ground speed sensor for a given identifier.
         * <para>
         *   The identifier can be specified using several formats:
         * </para>
         * <para>
         * </para>
         * <para>
         *   - FunctionLogicalName
         * </para>
         * <para>
         *   - ModuleSerialNumber.FunctionIdentifier
         * </para>
         * <para>
         *   - ModuleSerialNumber.FunctionLogicalName
         * </para>
         * <para>
         *   - ModuleLogicalName.FunctionIdentifier
         * </para>
         * <para>
         *   - ModuleLogicalName.FunctionLogicalName
         * </para>
         * <para>
         * </para>
         * <para>
         *   This function does not require that the ground speed sensor is online at the time
         *   it is invoked. The returned object is nevertheless valid.
         *   Use the method <c>YGroundSpeed.isOnline()</c> to test if the ground speed sensor is
         *   indeed online at a given time. In case of ambiguity when looking for
         *   a ground speed sensor by logical name, no error is notified: the first instance
         *   found is returned. The search is performed first by hardware name,
         *   then by logical name.
         * </para>
         * <para>
         *   If a call to this object's is_online() method returns FALSE although
         *   you are certain that the matching device is plugged, make sure that you did
         *   call registerHub() at application initialization time.
         * </para>
         * <para>
         * </para>
         * </summary>
         * <param name="func">
         *   a string that uniquely characterizes the ground speed sensor, for instance
         *   <c>YGNSSMK2.groundSpeed</c>.
         * </param>
         * <returns>
         *   a <c>YGroundSpeed</c> object allowing you to drive the ground speed sensor.
         * </returns>
         */
        public static YGroundSpeed FindGroundSpeed(string func)
        {
            YGroundSpeed obj;

            obj = (YGroundSpeed)YFunction._FindFromCache("GroundSpeed", func);
            if (obj == null)
            {
                obj = new YGroundSpeed(func);
                YFunction._AddToCache("GroundSpeed", func, obj);
            }
            return(obj);
        }
예제 #26
0
        /**
         * <summary>
         *   Retrieves a tilt sensor for a given identifier.
         * <para>
         *   The identifier can be specified using several formats:
         * </para>
         * <para>
         * </para>
         * <para>
         *   - FunctionLogicalName
         * </para>
         * <para>
         *   - ModuleSerialNumber.FunctionIdentifier
         * </para>
         * <para>
         *   - ModuleSerialNumber.FunctionLogicalName
         * </para>
         * <para>
         *   - ModuleLogicalName.FunctionIdentifier
         * </para>
         * <para>
         *   - ModuleLogicalName.FunctionLogicalName
         * </para>
         * <para>
         * </para>
         * <para>
         *   This function does not require that the tilt sensor is online at the time
         *   it is invoked. The returned object is nevertheless valid.
         *   Use the method <c>YTilt.isOnline()</c> to test if the tilt sensor is
         *   indeed online at a given time. In case of ambiguity when looking for
         *   a tilt sensor by logical name, no error is notified: the first instance
         *   found is returned. The search is performed first by hardware name,
         *   then by logical name.
         * </para>
         * <para>
         *   If a call to this object's is_online() method returns FALSE although
         *   you are certain that the matching device is plugged, make sure that you did
         *   call registerHub() at application initialization time.
         * </para>
         * <para>
         * </para>
         * </summary>
         * <param name="func">
         *   a string that uniquely characterizes the tilt sensor, for instance
         *   <c>Y3DMK002.tilt1</c>.
         * </param>
         * <returns>
         *   a <c>YTilt</c> object allowing you to drive the tilt sensor.
         * </returns>
         */
        public static YTilt FindTilt(string func)
        {
            YTilt obj;

            obj = (YTilt)YFunction._FindFromCache("Tilt", func);
            if (obj == null)
            {
                obj = new YTilt(func);
                YFunction._AddToCache("Tilt", func, obj);
            }
            return(obj);
        }
예제 #27
0
        /**
         * <summary>
         *   Retrieves a cellular interface for a given identifier.
         * <para>
         *   The identifier can be specified using several formats:
         * </para>
         * <para>
         * </para>
         * <para>
         *   - FunctionLogicalName
         * </para>
         * <para>
         *   - ModuleSerialNumber.FunctionIdentifier
         * </para>
         * <para>
         *   - ModuleSerialNumber.FunctionLogicalName
         * </para>
         * <para>
         *   - ModuleLogicalName.FunctionIdentifier
         * </para>
         * <para>
         *   - ModuleLogicalName.FunctionLogicalName
         * </para>
         * <para>
         * </para>
         * <para>
         *   This function does not require that the cellular interface is online at the time
         *   it is invoked. The returned object is nevertheless valid.
         *   Use the method <c>YBluetoothLink.isOnline()</c> to test if the cellular interface is
         *   indeed online at a given time. In case of ambiguity when looking for
         *   a cellular interface by logical name, no error is notified: the first instance
         *   found is returned. The search is performed first by hardware name,
         *   then by logical name.
         * </para>
         * <para>
         *   If a call to this object's is_online() method returns FALSE although
         *   you are certain that the matching device is plugged, make sure that you did
         *   call registerHub() at application initialization time.
         * </para>
         * <para>
         * </para>
         * </summary>
         * <param name="func">
         *   a string that uniquely characterizes the cellular interface
         * </param>
         * <returns>
         *   a <c>YBluetoothLink</c> object allowing you to drive the cellular interface.
         * </returns>
         */
        public static YBluetoothLink FindBluetoothLink(string func)
        {
            YBluetoothLink obj;

            obj = (YBluetoothLink)YFunction._FindFromCache("BluetoothLink", func);
            if (obj == null)
            {
                obj = new YBluetoothLink(func);
                YFunction._AddToCache("BluetoothLink", func, obj);
            }
            return(obj);
        }
예제 #28
0
        /**
         * <summary>
         *   Retrieves a regulated power supply for a given identifier.
         * <para>
         *   The identifier can be specified using several formats:
         * </para>
         * <para>
         * </para>
         * <para>
         *   - FunctionLogicalName
         * </para>
         * <para>
         *   - ModuleSerialNumber.FunctionIdentifier
         * </para>
         * <para>
         *   - ModuleSerialNumber.FunctionLogicalName
         * </para>
         * <para>
         *   - ModuleLogicalName.FunctionIdentifier
         * </para>
         * <para>
         *   - ModuleLogicalName.FunctionLogicalName
         * </para>
         * <para>
         * </para>
         * <para>
         *   This function does not require that the regulated power supply is online at the time
         *   it is invoked. The returned object is nevertheless valid.
         *   Use the method <c>YPowerSupply.isOnline()</c> to test if the regulated power supply is
         *   indeed online at a given time. In case of ambiguity when looking for
         *   a regulated power supply by logical name, no error is notified: the first instance
         *   found is returned. The search is performed first by hardware name,
         *   then by logical name.
         * </para>
         * <para>
         *   If a call to this object's is_online() method returns FALSE although
         *   you are certain that the matching device is plugged, make sure that you did
         *   call registerHub() at application initialization time.
         * </para>
         * <para>
         * </para>
         * </summary>
         * <param name="func">
         *   a string that uniquely characterizes the regulated power supply, for instance
         *   <c>MyDevice.powerSupply</c>.
         * </param>
         * <returns>
         *   a <c>YPowerSupply</c> object allowing you to drive the regulated power supply.
         * </returns>
         */
        public static YPowerSupply FindPowerSupply(string func)
        {
            YPowerSupply obj;

            obj = (YPowerSupply)YFunction._FindFromCache("PowerSupply", func);
            if (obj == null)
            {
                obj = new YPowerSupply(func);
                YFunction._AddToCache("PowerSupply", func, obj);
            }
            return(obj);
        }
예제 #29
0
        /**
         * <summary>
         *   Retrieves a YoctoHub slave port for a given identifier.
         * <para>
         *   The identifier can be specified using several formats:
         * </para>
         * <para>
         * </para>
         * <para>
         *   - FunctionLogicalName
         * </para>
         * <para>
         *   - ModuleSerialNumber.FunctionIdentifier
         * </para>
         * <para>
         *   - ModuleSerialNumber.FunctionLogicalName
         * </para>
         * <para>
         *   - ModuleLogicalName.FunctionIdentifier
         * </para>
         * <para>
         *   - ModuleLogicalName.FunctionLogicalName
         * </para>
         * <para>
         * </para>
         * <para>
         *   This function does not require that the YoctoHub slave port is online at the time
         *   it is invoked. The returned object is nevertheless valid.
         *   Use the method <c>YHubPort.isOnline()</c> to test if the YoctoHub slave port is
         *   indeed online at a given time. In case of ambiguity when looking for
         *   a YoctoHub slave port by logical name, no error is notified: the first instance
         *   found is returned. The search is performed first by hardware name,
         *   then by logical name.
         * </para>
         * <para>
         *   If a call to this object's is_online() method returns FALSE although
         *   you are certain that the matching device is plugged, make sure that you did
         *   call registerHub() at application initialization time.
         * </para>
         * <para>
         * </para>
         * </summary>
         * <param name="func">
         *   a string that uniquely characterizes the YoctoHub slave port, for instance
         *   <c>YHUBETH1.hubPort1</c>.
         * </param>
         * <returns>
         *   a <c>YHubPort</c> object allowing you to drive the YoctoHub slave port.
         * </returns>
         */
        public static YHubPort FindHubPort(string func)
        {
            YHubPort obj;

            obj = (YHubPort)YFunction._FindFromCache("HubPort", func);
            if (obj == null)
            {
                obj = new YHubPort(func);
                YFunction._AddToCache("HubPort", func, obj);
            }
            return(obj);
        }
예제 #30
0
        /**
         * <summary>
         *   Retrieves a module chain for a given identifier.
         * <para>
         *   The identifier can be specified using several formats:
         * </para>
         * <para>
         * </para>
         * <para>
         *   - FunctionLogicalName
         * </para>
         * <para>
         *   - ModuleSerialNumber.FunctionIdentifier
         * </para>
         * <para>
         *   - ModuleSerialNumber.FunctionLogicalName
         * </para>
         * <para>
         *   - ModuleLogicalName.FunctionIdentifier
         * </para>
         * <para>
         *   - ModuleLogicalName.FunctionLogicalName
         * </para>
         * <para>
         * </para>
         * <para>
         *   This function does not require that the module chain is online at the time
         *   it is invoked. The returned object is nevertheless valid.
         *   Use the method <c>YDaisyChain.isOnline()</c> to test if the module chain is
         *   indeed online at a given time. In case of ambiguity when looking for
         *   a module chain by logical name, no error is notified: the first instance
         *   found is returned. The search is performed first by hardware name,
         *   then by logical name.
         * </para>
         * <para>
         *   If a call to this object's is_online() method returns FALSE although
         *   you are certain that the matching device is plugged, make sure that you did
         *   call registerHub() at application initialization time.
         * </para>
         * <para>
         * </para>
         * </summary>
         * <param name="func">
         *   a string that uniquely characterizes the module chain, for instance
         *   <c>MyDevice.daisyChain</c>.
         * </param>
         * <returns>
         *   a <c>YDaisyChain</c> object allowing you to drive the module chain.
         * </returns>
         */
        public static YDaisyChain FindDaisyChain(string func)
        {
            YDaisyChain obj;

            obj = (YDaisyChain)YFunction._FindFromCache("DaisyChain", func);
            if (obj == null)
            {
                obj = new YDaisyChain(func);
                YFunction._AddToCache("DaisyChain", func, obj);
            }
            return(obj);
        }