sim_exit.hh (2665:a124942bacb8) sim_exit.hh (2667:fe64b8353b1c)
1/*
2 * Copyright (c) 2003-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;

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

31
32#ifndef __SIM_EXIT_HH__
33#define __SIM_EXIT_HH__
34
35#include <string>
36
37#include "sim/host.hh"
38
1/*
2 * Copyright (c) 2003-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;

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

31
32#ifndef __SIM_EXIT_HH__
33#define __SIM_EXIT_HH__
34
35#include <string>
36
37#include "sim/host.hh"
38
39// forward declaration
39class Callback;
40
40class Callback;
41
42/// Register a callback to be called when Python exits. Defined in
43/// sim/main.cc.
41void registerExitCallback(Callback *);
42
44void registerExitCallback(Callback *);
45
43void exitNow(const std::string &cause, int exit_code);
44void exitNow(const char *cause, int exit_code);
45void SimExit(Tick when, const char *message);
46/// Schedule an event to exit the simulation loop (returning to
47/// Python) at the indicated tick. The message and exit_code
48/// parameters are saved in the SimLoopExitEvent to indicate why the
49/// exit occurred.
50void exitSimLoop(Tick when, const std::string &message, int exit_code = 0);
46
51
52/// Schedule an event to exit the simulation loop (returning to
53/// Python) at the end of the current cycle (curTick). The message
54/// and exit_code parameters are saved in the SimLoopExitEvent to
55/// indicate why the exit occurred.
56void exitSimLoop(const std::string &cause, int exit_code = 0);
57
47#endif // __SIM_EXIT_HH__
58#endif // __SIM_EXIT_HH__