process.hh (13194:9c6b495e650c) | process.hh (13196:4b5ab2c22743) |
---|---|
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 --- 35 unchanged lines hidden (view full) --- 44#include "systemc/ext/core/sc_event.hh" 45#include "systemc/ext/core/sc_export.hh" 46#include "systemc/ext/core/sc_interface.hh" 47#include "systemc/ext/core/sc_module.hh" 48#include "systemc/ext/core/sc_port.hh" 49#include "systemc/ext/core/sc_process_handle.hh" 50#include "systemc/ext/utils/sc_report.hh" 51 | 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 --- 35 unchanged lines hidden (view full) --- 44#include "systemc/ext/core/sc_event.hh" 45#include "systemc/ext/core/sc_export.hh" 46#include "systemc/ext/core/sc_interface.hh" 47#include "systemc/ext/core/sc_module.hh" 48#include "systemc/ext/core/sc_port.hh" 49#include "systemc/ext/core/sc_process_handle.hh" 50#include "systemc/ext/utils/sc_report.hh" 51 |
52namespace sc_core 53{ 54 55class sc_join; 56 57} // namespace sc_core 58 |
|
52namespace sc_gem5 53{ 54 55class ScHalt 56{}; 57 58class Sensitivity 59{ --- 282 unchanged lines hidden (view full) --- 342 bool hasStaticSensitivities() { return !staticSensitivities.empty(); } 343 bool internal() { return _internal; } 344 bool timedOut() { return _timedOut; } 345 void timedOut(bool to) { _timedOut = to; } 346 347 bool dontInitialize() { return _dontInitialize; } 348 void dontInitialize(bool di) { _dontInitialize = di; } 349 | 59namespace sc_gem5 60{ 61 62class ScHalt 63{}; 64 65class Sensitivity 66{ --- 282 unchanged lines hidden (view full) --- 349 bool hasStaticSensitivities() { return !staticSensitivities.empty(); } 350 bool internal() { return _internal; } 351 bool timedOut() { return _timedOut; } 352 void timedOut(bool to) { _timedOut = to; } 353 354 bool dontInitialize() { return _dontInitialize; } 355 void dontInitialize(bool di) { _dontInitialize = di; } 356 |
357 void joinWait(::sc_core::sc_join *join) { joinWaiters.push_back(join); } 358 |
|
350 protected: 351 Process(const char *name, ProcessFuncWrapper *func, bool internal=false); 352 353 static Process *_newest; 354 355 virtual ~Process() 356 { 357 popListNode(); --- 33 unchanged lines hidden (view full) --- 391 size_t stackSize; 392 393 Sensitivities staticSensitivities; 394 PendingSensitivities pendingStaticSensitivities; 395 396 Sensitivity *dynamicSensitivity; 397 398 std::unique_ptr<::sc_core::sc_report> _lastReport; | 359 protected: 360 Process(const char *name, ProcessFuncWrapper *func, bool internal=false); 361 362 static Process *_newest; 363 364 virtual ~Process() 365 { 366 popListNode(); --- 33 unchanged lines hidden (view full) --- 400 size_t stackSize; 401 402 Sensitivities staticSensitivities; 403 PendingSensitivities pendingStaticSensitivities; 404 405 Sensitivity *dynamicSensitivity; 406 407 std::unique_ptr<::sc_core::sc_report> _lastReport; |
408 409 std::vector<::sc_core::sc_join *> joinWaiters; |
|
399}; 400 401inline void 402Sensitivity::satisfy(bool timedOut) 403{ 404 process->timedOut(timedOut); 405 process->satisfySensitivity(this); 406} --- 17 unchanged lines hidden --- | 410}; 411 412inline void 413Sensitivity::satisfy(bool timedOut) 414{ 415 process->timedOut(timedOut); 416 process->satisfySensitivity(this); 417} --- 17 unchanged lines hidden --- |