-/* Copyright (c) 2004-2017. The SimGrid Team. All rights reserved. */
+/* Copyright (c) 2004-2018. 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. */
#define GUESTOS_NOISE 100 // This value corresponds to the cost of the global action associated to the VM
// It corresponds to the cost of a VM running no tasks.
-typedef struct s_dirty_page* dirty_page_t;
-
namespace simgrid {
namespace vm {
* @brief SURF VM interface class
* @details A VM represent a virtual machine
*/
-XBT_PUBLIC_CLASS VirtualMachineImpl : public surf::HostImpl, public simgrid::xbt::Extendable<VirtualMachineImpl>
-{
+class XBT_PUBLIC VirtualMachineImpl : public surf::HostImpl, public simgrid::xbt::Extendable<VirtualMachineImpl> {
friend simgrid::s4u::VirtualMachine;
public:
~VirtualMachineImpl();
/** @brief Suspend the VM */
- virtual void suspend(simgrid::simix::ActorImpl* issuer);
+ virtual void suspend(simgrid::kernel::actor::ActorImpl* issuer);
/** @brief Resume the VM */
virtual void resume();
/** @brief Shutdown the VM */
- virtual void shutdown(simgrid::simix::ActorImpl* issuer);
+ virtual void shutdown(simgrid::kernel::actor::ActorImpl* issuer);
/** @brief Change the physical host on which the given VM is running */
virtual void setPm(s4u::Host* dest);
virtual void setBound(double bound);
- void getParams(vm_params_t params);
- void setParams(vm_params_t params);
-
/* The vm object of the lower layer */
- surf::Action* action_ = nullptr;
+ kernel::resource::Action* action_ = nullptr;
e_surf_vm_state_t getState();
void setState(e_surf_vm_state_t state);
private:
simgrid::s4u::Host* hostPM_;
- s_vm_params_t params_;
int coreAmount_;
size_t ramsize_ = 0;
e_surf_vm_state_t vmState_ = SURF_VM_STATE_CREATED;
class XBT_PRIVATE VMModel : public surf::HostModel {
public:
VMModel();
- void ignoreEmptyVmInPmLMM() override{};
+ void ignore_empty_vm_in_pm_LMM() override{};
- double nextOccuringEvent(double now) override;
- void updateActionsState(double /*now*/, double /*delta*/) override{};
+ double next_occuring_event(double now) override;
+ void update_actions_state(double /*now*/, double /*delta*/) override{};
};
}
}
-XBT_PUBLIC_DATA(simgrid::vm::VMModel*) surf_vm_model;
+XBT_PUBLIC_DATA simgrid::vm::VMModel* surf_vm_model;
#endif /* VM_INTERFACE_HPP_ */