process.hh (13175:b93fb6caf043) process.hh (13180:79e680f62779)
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

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

331
332 virtual Fiber *fiber() { return Fiber::primaryFiber(); }
333
334 static Process *newest() { return _newest; }
335
336 void lastReport(::sc_core::sc_report *report);
337 ::sc_core::sc_report *lastReport() const;
338
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

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

331
332 virtual Fiber *fiber() { return Fiber::primaryFiber(); }
333
334 static Process *newest() { return _newest; }
335
336 void lastReport(::sc_core::sc_report *report);
337 ::sc_core::sc_report *lastReport() const;
338
339 bool hasStaticSensitivities() { return !staticSensitivities.empty(); }
340 bool internal() { return _internal; }
341
339 protected:
342 protected:
340 Process(const char *name, ProcessFuncWrapper *func);
343 Process(const char *name, ProcessFuncWrapper *func, bool internal=false);
341
342 static Process *_newest;
343
344 virtual ~Process()
345 {
346 popListNode();
347 delete func;
348 for (auto s: staticSensitivities)
349 delete s;
350 }
351
352 ::sc_core::sc_event _resetEvent;
353 ::sc_core::sc_event _terminatedEvent;
354
355 ProcessFuncWrapper *func;
356 sc_core::sc_curr_proc_kind _procKind;
344
345 static Process *_newest;
346
347 virtual ~Process()
348 {
349 popListNode();
350 delete func;
351 for (auto s: staticSensitivities)
352 delete s;
353 }
354
355 ::sc_core::sc_event _resetEvent;
356 ::sc_core::sc_event _terminatedEvent;
357
358 ProcessFuncWrapper *func;
359 sc_core::sc_curr_proc_kind _procKind;
360
361 bool _internal;
362
357 bool _needsStart;
358 bool _dynamic;
359 bool _isUnwinding;
360 bool _terminated;
361
362 void terminate();
363
364 bool _suspended;

--- 39 unchanged lines hidden ---
363 bool _needsStart;
364 bool _dynamic;
365 bool _isUnwinding;
366 bool _terminated;
367
368 void terminate();
369
370 bool _suspended;

--- 39 unchanged lines hidden ---