- this->scheduler = new Scheduler();
-
- num_executions = 0;
- this->current_action = NULL;
- this->exploring = NULL;
- this->nextThread = THREAD_ID_T_NONE;
-
- rootNode = new TreeNode(NULL);
- currentNode = rootNode;
- action_trace = new action_list_t();
+ scheduler(new Scheduler()),
+ /* First thread created will have id INITIAL_THREAD_ID */
+ next_thread_id(INITIAL_THREAD_ID),
+ used_sequence_numbers(0),
+
+ num_executions(0),
+ current_action(NULL),
+ diverge(NULL),
+ nextThread(THREAD_ID_T_NONE),
+ action_trace(new action_list_t()),
+ thread_map(new std::map<int, class Thread *>),
+ obj_thrd_map(new std::map<void *, std::vector<action_list_t> >()),
+ thrd_last_action(new std::vector<ModelAction *>(1)),
+ node_stack(new NodeStack()),
+ next_backtrack(NULL)
+{