Esempio n. 1
0
        public static BaseUnit Define(string name, 
                                      string symbol, 
                                      string measure)
        {
            if (__definedUnits.Exists(unit => unit.Names.Any(
                                      unitName => unitName.Name == name)))
            {
                throw new ArgumentException(
                    String.Format("A base unit with the name '{0}'" +
                                  "has already been defined", name),
                    "name");
            }

            if (__definedUnits.Exists(unit => unit.Names.Any(
                                      unitName => unitName.Symbol == symbol)))
            {
                throw new ArgumentException(
                    String.Format("A base unit with the symbol '{0}'" +
                                  "has already been defined", symbol),
                    "symbol");
            }

            var newUnit = new BaseUnit(name, symbol, measure);
            __definedUnits.Add(newUnit);
            return newUnit;
        }
Esempio n. 2
0
        public int this[BaseUnit baseUnit]
        {
            get
            {
                if (!_baseUnitExponents.ContainsKey(baseUnit))
                    return 0;

                return _baseUnitExponents[baseUnit];
            }
            protected set
            {
                 if (!_baseUnitExponents.ContainsKey(baseUnit))
                    _baseUnitExponents.Add(baseUnit, value);

                _baseUnitExponents[baseUnit] = value;
            }
        }