/// <summary>
        /// Resolves the specified parameter.
        /// </summary>
        /// <typeparam name="T">The type of the parameter.</typeparam>
        /// <param name="parameter">The parameter.</param>
        /// <returns>The specified parameter value or the default value if none specified.</returns>
        protected T ResolveParameter <T>(GeometryStreamParameter parameter)
        {
            if (_parameters != null && _parameters.ContainsKey(parameter) && _parameters[parameter] is T)
            {
                return((T)_parameters[parameter]);
            }

            return((T)parameter.DefaultValue);
        }
        /// <summary>
        /// Resolves the specified parameter.
        /// </summary>
        /// <param name="parameter">The parameter.</param>
        /// <returns>The specified parameter value or the default value if none specified.</returns>
        protected Object ResolveParameter(GeometryStreamParameter parameter)
        {
            if (_parameters != null && _parameters.ContainsKey(parameter))
            {
                return(_parameters[parameter]);
            }

            return(parameter.DefaultValue);
        }
 /// <summary>
 /// Determines whether the specified parameter is provided.
 /// </summary>
 /// <param name="parameter">The parameter.</param>
 /// <returns><c>true</c> if the parameter is provided; otherwise, <c>false</c>.</returns>
 protected Boolean IsProvidedParameter(GeometryStreamParameter parameter)
 {
     return(_parameters != null && _parameters.ContainsKey(parameter));
 }