projects
/
model-checker.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
move thread stack to thread allocator
[model-checker.git]
/
schedule.h
diff --git
a/schedule.h
b/schedule.h
index c18953d44824d09782e1cd389becbb96c181fb4c..9b16a7a968f7dcd5f52be8e936467efec29b0c48 100644
(file)
--- a/
schedule.h
+++ b/
schedule.h
@@
-11,6
+11,7
@@
/* Forward declaration */
class Thread;
class Node;
/* Forward declaration */
class Thread;
class Node;
+class ModelExecution;
typedef enum enabled_type {
THREAD_DISABLED,
typedef enum enabled_type {
THREAD_DISABLED,
@@
-25,11
+26,13
@@
void enabled_type_to_string(enabled_type_t e, char *str);
class Scheduler {
public:
Scheduler();
class Scheduler {
public:
Scheduler();
+ void register_engine(ModelExecution *execution);
+
void add_thread(Thread *t);
void remove_thread(Thread *t);
void sleep(Thread *t);
void wake(Thread *t);
void add_thread(Thread *t);
void remove_thread(Thread *t);
void sleep(Thread *t);
void wake(Thread *t);
- Thread * select_next_thread();
+ Thread * select_next_thread(
Node *n
);
void set_current_thread(Thread *t);
Thread * get_current_thread() const;
void print() const;
void set_current_thread(Thread *t);
Thread * get_current_thread() const;
void print() const;
@@
-46,6
+49,7
@@
public:
SNAPSHOTALLOC
private:
SNAPSHOTALLOC
private:
+ ModelExecution *execution;
/** The list of available Threads that are not currently running */
enabled_type_t *enabled;
int enabled_len;
/** The list of available Threads that are not currently running */
enabled_type_t *enabled;
int enabled_len;