Example #1
0
 /// <summary>
 /// Returns the specified grade system representation of the current route grade.
 /// </summary>
 /// <param name="gradeSystem">Grade system to apply.</param>
 /// <returns>The specified grade system representation of the current route grade.</returns>
 public string ToGrade(RouteGradeSystem gradeSystem)
 {
     return ToGrade(null, gradeSystem);
 }
Example #2
0
        /// <summary>
        /// Returns the specified grade system representation of the current route grade.
        /// </summary>
        /// <param name="route">Owning route.</param>
        /// <param name="gradeSystem">Grade system to apply.</param>
        /// <returns>The specified grade system representation of the current route grade.</returns>
        public string ToGrade(Route route, RouteGradeSystem gradeSystem)
        {
            string ret = string.Empty;

            if (route != null)
            {
                if (route.Climbing.HasFlag(ClimbingTypes.Bouldering))
                    ret = ToHueco();
            }

            if (string.IsNullOrEmpty(ret))
            {
                switch (gradeSystem)
                {
                    case RouteGradeSystem.YDS:
                        ret = ToYDS();
                        break;
                    case RouteGradeSystem.French:
                        ret = ToFrench();
                        break;
                    case RouteGradeSystem.Hueco:
                        ret = ToHueco();
                        break;
                    case RouteGradeSystem.Ewbank:
                        ret = ToEwbank();
                        break;
                }
            }

            if (string.IsNullOrEmpty(ret))
                ret = "-";

            return ret;
        }
Example #3
0
        /// <summary>
        /// Parses  the route grade from the specified representation.
        /// </summary>
        /// <param name="grade">Route grade in specified representation.</param>
        /// <param name="gradeSystem">Grade system the value is expressed in.</param>
        /// <returns>Route grade.</returns>
        public static RouteGrade FromGrade(string grade, RouteGradeSystem gradeSystem)
        {
            RouteGrade ret = null;

            switch (gradeSystem)
            {
                case RouteGradeSystem.YDS:
                    ret = RouteGrade.FromYDS(grade);
                    break;
                case RouteGradeSystem.French:
                    ret = RouteGrade.FromFrench(grade);
                    break;
                case RouteGradeSystem.Hueco:
                    ret = RouteGrade.FromHueco(grade);
                    break;
                case RouteGradeSystem.Ewbank:
                    ret = RouteGrade.FromEwbank(grade);
                    break;
            }

            return ret;
        }