sim_events.hh (2839:d5dd8a3cdea0) sim_events.hh (3144:b6e9e1811d71)
1/*
2 * Copyright (c) 2002-2005 The Regents of The University of Michigan
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are
7 * met: redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer;

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

37// Event to terminate simulation at a particular cycle/instruction
38//
39class SimLoopExitEvent : public Event
40{
41 private:
42 // string explaining why we're terminating
43 std::string cause;
44 int code;
1/*
2 * Copyright (c) 2002-2005 The Regents of The University of Michigan
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are
7 * met: redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer;

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

37// Event to terminate simulation at a particular cycle/instruction
38//
39class SimLoopExitEvent : public Event
40{
41 private:
42 // string explaining why we're terminating
43 std::string cause;
44 int code;
45 Tick repeat;
45
46 public:
47 // Default constructor. Only really used for derived classes.
48 SimLoopExitEvent()
49 : Event(&mainEventQueue, Sim_Exit_Pri)
50 { }
51
46
47 public:
48 // Default constructor. Only really used for derived classes.
49 SimLoopExitEvent()
50 : Event(&mainEventQueue, Sim_Exit_Pri)
51 { }
52
52 SimLoopExitEvent(Tick _when, const std::string &_cause, int c = 0)
53 : Event(&mainEventQueue, Sim_Exit_Pri), cause(_cause),
54 code(c)
55 { setFlags(IsExitEvent); schedule(_when); }
56
57 SimLoopExitEvent(EventQueue *q,
53 SimLoopExitEvent(EventQueue *q,
58 Tick _when, const std::string &_cause, int c = 0)
59 : Event(q, Sim_Exit_Pri), cause(_cause), code(c)
54 Tick _when, Tick _repeat, const std::string &_cause,
55 int c = 0)
56 : Event(q, Sim_Exit_Pri), cause(_cause),
57 code(c), repeat(_repeat)
60 { setFlags(IsExitEvent); schedule(_when); }
61
58 { setFlags(IsExitEvent); schedule(_when); }
59
60// SimLoopExitEvent(EventQueue *q,
61// Tick _when, const std::string &_cause,
62// Tick _repeat = 0, int c = 0)
63// : Event(q, Sim_Exit_Pri), cause(_cause), code(c), repeat(_repeat)
64// { setFlags(IsExitEvent); schedule(_when); }
65
62 std::string getCause() { return cause; }
63 int getCode() { return code; }
64
65 void process(); // process event
66
67 virtual const char *description();
68};
69

--- 74 unchanged lines hidden ---
66 std::string getCause() { return cause; }
67 int getCode() { return code; }
68
69 void process(); // process event
70
71 virtual const char *description();
72};
73

--- 74 unchanged lines hidden ---