示例#1
0
        /// <summary>
        /// Creates and adds a new SysDOM-only signal descriptor.
        /// </summary>
        /// <param name="me">component descriptor to host the new signal</param>
        /// <param name="name">name of new signal</param>
        /// <param name="dataType">type of signal value</param>
        /// <returns>the descriptor for the newly created signal</returns>
        public static SignalBuilder CreateSignal(this IComponentDescriptor me, string name, Type dataType)
        {
            Contract.Requires <ArgumentNullException>(me != null);
            Contract.Requires <ArgumentNullException>(name != null);
            Contract.Requires <ArgumentNullException>(dataType != null);

            object        initialValue = Activator.CreateInstance(dataType);
            SignalBuilder result       = new SignalBuilder(dataType, initialValue);

            me.AddChild(result, name);
            return(result);
        }
示例#2
0
        /// <summary>
        /// Creates and adds a new SysDOM-only signal descriptor.
        /// </summary>
        /// <param name="me">component descriptor to host the new signal</param>
        /// <param name="name">name of new signal</param>
        /// <param name="dataType">type of signal value</param>
        /// <returns>the descriptor for the newly created signal</returns>
        public static SignalBuilder CreateSignal(this IComponentDescriptor me, string name, Type dataType)
        {
            Contract.Requires<ArgumentNullException>(me != null);
            Contract.Requires<ArgumentNullException>(name != null);
            Contract.Requires<ArgumentNullException>(dataType != null);

            object initialValue = Activator.CreateInstance(dataType);
            SignalBuilder result = new SignalBuilder(dataType, initialValue);
            me.AddChild(result, name);
            return result;
        }