From 00372fb761d9f0e4a15764c7bd45f9ad3ecad8aa Mon Sep 17 00:00:00 2001
From: Brian Norris <banorris@uci.edu>
Date: Fri, 20 Apr 2012 10:47:10 -0700
Subject: [PATCH] model: add prototypes to header

I will implement these functions in the next few commits.
---
 model.cc | 2 ++
 model.h  | 8 ++++++++
 2 files changed, 10 insertions(+)

diff --git a/model.cc b/model.cc
index 17ff0f9..4307b39 100644
--- a/model.cc
+++ b/model.cc
@@ -14,6 +14,8 @@ ModelChecker::ModelChecker()
 	this->scheduler = new Scheduler();
 
 	this->current_action = NULL;
+	this->exploring = NULL;
+	this->nextThread = THREAD_ID_T_NONE;
 
 	rootNode = new TreeNode(NULL);
 	currentNode = rootNode;
diff --git a/model.h b/model.h
index db13601..01cf29b 100644
--- a/model.h
+++ b/model.h
@@ -78,6 +78,7 @@ public:
 	void check_current_action(void);
 	void set_backtracking(ModelAction *act);
 	void print_trace(void);
+	Thread *schedule_next_thread();
 
 	int add_thread(Thread *t);
 	Thread *get_thread(thread_id_t tid) { return thread_map[tid]; }
@@ -87,7 +88,14 @@ public:
 	int switch_to_master(ModelAction *act);
 private:
 	int used_thread_id;
+
+	thread_id_t advance_backtracking_state();
+	thread_id_t get_next_replay_thread();
+
 	class ModelAction *current_action;
+	Backtrack *exploring;
+	thread_id_t nextThread;
+
 	action_list_t *action_trace;
 	std::map<thread_id_t, class Thread *> thread_map;
 	class TreeNode *rootNode, *currentNode;
-- 
2.34.1