1/*
2 * Copyright 2018 Google, Inc.
3 *
4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions are
6 * met: redistributions of source code must retain the above copyright
7 * notice, this list of conditions and the following disclaimer;
8 * redistributions in binary form must reproduce the above copyright

--- 324 unchanged lines hidden (view full) ---

333 StatusOther = 0,
334 StatusDelta,
335 StatusUpdate,
336 StatusTiming,
337 StatusPaused,
338 StatusStopped
339 };
340
341 bool elaborationDone() { return _elaborationDone; }
342 void elaborationDone(bool b) { _elaborationDone = b; }
343
344 bool paused() { return status() == StatusPaused; }
345 bool stopped() { return status() == StatusStopped; }
346 bool inDelta() { return status() == StatusDelta; }
347 bool inUpdate() { return status() == StatusUpdate; }
348 bool inTiming() { return status() == StatusTiming; }
349
350 uint64_t changeStamp() { return _changeStamp; }
351

--- 56 unchanged lines hidden (view full) ---

408 return (readyListMethods.empty() && readyListThreads.empty() &&
409 updateList.empty() && deltas.empty() &&
410 (timeSlots.empty() || timeSlots.begin()->first > maxTick) &&
411 initList.empty());
412 }
413 EventWrapper<Scheduler, &Scheduler::pause> starvationEvent;
414 void scheduleStarvationEvent();
415
416 bool _elaborationDone;
417 bool _started;
418 bool _stopNow;
419
420 Status _status;
421
422 Tick maxTick;
423 Tick lastReadyTick;
424 void

--- 55 unchanged lines hidden ---