Exemplo n.º 1
0
        /// <summary>
        /// Utility function which updates the value of a PropertyUint. (Not intended for external use)
        /// </summary>
        /// <remarks>If the property value has changed and the properties are not locked (PropertiesLock()
        /// called more recently than PropertiesUnlock()), publication of an update is scheduled.
        ///
        /// Throws ParameterValidationError if the property has a range of allowed values and
        /// the new value is not in this range</remarks>
        /// <param name="aProperty">Property to be updated</param>
        /// <param name="aValue">New value for the property</param>
        /// <returns>true if the property's value has changed (aValue was different to the previous value)</returns>
        protected bool SetPropertyUint(PropertyUint aProperty, uint aValue)
        {
            uint changed;
            int  err = DvProviderSetPropertyUint(iHandle, aProperty.Handle(), aValue, out changed);

            if (err != 0)
            {
                throw new PropertyUpdateError();
            }
            return(changed != 0);
        }