예제 #1
0
 /// <summary>
 /// Initializes a new Instance of BahnEditor.BahnLib.DrivingWayElement class
 /// </summary>
 /// <param name="drivingWay">Type of driving way</param>
 /// <param name="function">Additional functions of the driving way</param>
 /// <param name="arrival">Incoming direction of the driving way</param>
 /// <param name="departure">Outgoing direction of the driving way</param>
 public DrivingWayElement(DrivingWay drivingWay, DrivingWayFunction function, Direction arrival, Direction departure)
 {
     this.DrivingWay = drivingWay;
     this.Function   = function;
     this.Arrival    = arrival;
     this.Departure  = departure;
 }
예제 #2
0
        /// <summary>
        /// Gets a driving way from bytes (used to load from file)
        /// </summary>
        /// <param name="data">Data from file</param>
        /// <returns>Driving way element</returns>
        internal static DrivingWayElement FromBytes(byte[] data)
        {
            byte drivingWayByte         = data[0];
            byte drivingWayFunctionByte = data[4];
            byte arrivalByte            = (byte)(data[8] & 0xF);
            byte departureByte          = (byte)((data[8] & 0xF0) >> 4);

            DrivingWay         drivingWay = (DrivingWay)drivingWayByte;
            DrivingWayFunction function   = (DrivingWayFunction)drivingWayFunctionByte;
            Direction          arrival    = (Direction)arrivalByte;
            Direction          departure  = (Direction)departureByte;

            return(new DrivingWayElement(drivingWay, function, arrival, departure));
        }