public /*private*/ static Garage.eOperatesOn GetSourceOfEnergy(C19_Ex03_GarageLogic.Vehicle.eVehicle i_Vehicle) { Garage.eOperatesOn output; switch (i_Vehicle) { case C19_Ex03_GarageLogic.Vehicle.eVehicle.CarThatOperatesOnFuel: case C19_Ex03_GarageLogic.Vehicle.eVehicle.MotorcycleThatOperatesOnFuel: case C19_Ex03_GarageLogic.Vehicle.eVehicle.TruckThatOperatesOnFuel: output = Garage.eOperatesOn.Fuel; break; case C19_Ex03_GarageLogic.Vehicle.eVehicle.ElectricCar: case C19_Ex03_GarageLogic.Vehicle.eVehicle.ElectricMotorcycle: case C19_Ex03_GarageLogic.Vehicle.eVehicle.ElectricTruck: output = Garage.eOperatesOn.Electricity; break; default: throw new UnreachableCodeReachedException(); } return(output); }
public /*private*/ static float GetMaximumNumberOfHoursForLifeTimeOfBattery(C19_Ex03_GarageLogic.Vehicle.eVehicle i_Vehicle) { float output; switch (i_Vehicle) { case C19_Ex03_GarageLogic.Vehicle.eVehicle.ElectricCar: output = ElectricCar.k_MaximumNumberOfHoursForLifeTimeOfBattery; break; case C19_Ex03_GarageLogic.Vehicle.eVehicle.ElectricMotorcycle: output = ElectricMotorcycle.k_MaximumNumberOfHoursForLifeOfBattery; break; case C19_Ex03_GarageLogic.Vehicle.eVehicle.ElectricTruck: output = ElectricTruck.k_MaximumNumberOfHoursForLifeTimeOfBattery; break; default: throw new ArgumentException("i_Vehicle's value must be an electric vehicle enum value.", "i_Vehicle"); } return(output); }
public /*private*/ static float GetCapacityOfTank(C19_Ex03_GarageLogic.Vehicle.eVehicle i_Vehicle) { float output; switch (i_Vehicle) { case C19_Ex03_GarageLogic.Vehicle.eVehicle.CarThatOperatesOnFuel: output = CarThatOperatesOnFuel.k_CapacityOfTank; break; case C19_Ex03_GarageLogic.Vehicle.eVehicle.MotorcycleThatOperatesOnFuel: output = MotorcycleThatOperatesOnFuel.k_CapacityOfTank; break; case C19_Ex03_GarageLogic.Vehicle.eVehicle.TruckThatOperatesOnFuel: output = TruckThatOperatesOnFuel.k_CapacityOfTank; break; default: throw new ArgumentException("i_Vehicle's value must be a vehicle that operates on fuel enum value.", "i_Vehicle"); } return(output); }
public /*private*/ static C19_Ex03_GarageLogic.Vehicle.eAbstractVehicle GetEnumAbstractVehicle(C19_Ex03_GarageLogic.Vehicle.eVehicle i_Vehicle) { C19_Ex03_GarageLogic.Vehicle.eAbstractVehicle output; switch (i_Vehicle) { case C19_Ex03_GarageLogic.Vehicle.eVehicle.CarThatOperatesOnFuel: case C19_Ex03_GarageLogic.Vehicle.eVehicle.ElectricCar: output = C19_Ex03_GarageLogic.Vehicle.eAbstractVehicle.Car; break; case C19_Ex03_GarageLogic.Vehicle.eVehicle.MotorcycleThatOperatesOnFuel: case C19_Ex03_GarageLogic.Vehicle.eVehicle.ElectricMotorcycle: output = C19_Ex03_GarageLogic.Vehicle.eAbstractVehicle.Motorcycle; break; case C19_Ex03_GarageLogic.Vehicle.eVehicle.TruckThatOperatesOnFuel: case C19_Ex03_GarageLogic.Vehicle.eVehicle.ElectricTruck: output = C19_Ex03_GarageLogic.Vehicle.eAbstractVehicle.Truck; break; default: throw new UnreachableCodeReachedException(); } return(output); }