コード例 #1
0
ファイル: GenericEvent.cs プロジェクト: menozz/mirelle
        /// <summary>
        /// Constructor
        /// </summary>
        /// <param name="emitter">Parent emitter of the event</param>
        public GenericEvent(EventEmitter emitter)
        {
            Emitter = emitter;

              // calculate time jitter
              double timeJitter = 0;
              if(emitter.Distribution != null)
              {
            // allow user to wobble in both directions
            if(emitter.Distribution is MN.Normal)
              timeJitter = emitter.Distribution.Sample() - emitter.Distribution.Sample();
            else
              timeJitter = emitter.Distribution.Sample();
              }

              var distance = emitter.Step + timeJitter;
              if (distance < 0)
            throw new ArgumentOutOfRangeException("Event cannot be created with negative time offset!");

              Time = Simulation.GetTime() + emitter.Step + timeJitter;
        }
コード例 #2
0
ファイル: Simulation.cs プロジェクト: menozz/mirelle
 /// <summary>
 /// Create a new event from the emitter and put it into the queue
 /// </summary>
 /// <param name="emitter"></param>
 public static void RegisterEmitter(EventEmitter emitter)
 {
     RegisterEvent(emitter.Emit());
 }