-/* Copyright (c) 2007-2015. The SimGrid Team.
- * All rights reserved. */
+/* Copyright (c) 2007-2017. The SimGrid Team. All rights reserved. */
/* This program is free software; you can redistribute it and/or modify it
* under the terms of the license (GNU LGPL) which comes with this package. */
#include <list>
#include <memory>
-#include <xbt/base.h>
-#include <xbt/dynar.h>
-
-#include <simgrid_config.h>
-#include "src/simix/smx_private.h"
-#include "src/kernel/activity/SynchroIo.hpp"
-#include "src/kernel/activity/SynchroComm.hpp"
-#include "src/kernel/activity/SynchroRaw.hpp"
-#include "src/kernel/activity/SynchroSleep.hpp"
-#include "src/kernel/activity/SynchroExec.hpp"
#include "src/mc/mc_snapshot.h"
#include "src/mc/mc_record.h"
#include "src/mc/Transition.hpp"
struct PatternCommunication {
int num = 0;
- smx_activity_t comm_addr;
+ simgrid::kernel::activity::CommImpl* comm_addr;
PatternCommunicationType type = PatternCommunicationType::send;
unsigned long src_proc = 0;
unsigned long dst_proc = 0;
s_smx_simcall_t internal_req;
/* Can be used as a copy of the remote synchro object */
- simgrid::mc::Remote<simgrid::kernel::activity::Comm> internal_comm;
+ simgrid::mc::Remote<simgrid::kernel::activity::CommImpl> internal_comm;
/** Snapshot of system state (if needed) */
std::shared_ptr<simgrid::mc::Snapshot> system_state;
State(unsigned long state_number);
std::size_t interleaveSize() const;
- void interleave(smx_actor_t actor) {
- this->actorStates[actor->pid].consider();
- }
+ void addInterleavingSet(smx_actor_t actor) { this->actorStates[actor->pid].consider(); }
Transition getTransition() const;
};