Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
model-checker : MUTEX_UNLOCK is invisible for MC
[simgrid.git] / src / surf / workstation_clm03.hpp
index ccf2480..88b4854 100644 (file)
@@ -1,3 +1,9 @@
+/* Copyright (c) 2013-2014. 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 "workstation_interface.hpp"
 #include "storage_interface.hpp"
 #include "cpu_interface.hpp"
 class WorkstationCLM03Model;
 typedef WorkstationCLM03Model *WorkstationCLM03ModelPtr;
 
-class WorkstationCLM03Lmm;
-typedef WorkstationCLM03Lmm *WorkstationCLM03LmmPtr;
+class WorkstationCLM03;
+typedef WorkstationCLM03 *WorkstationCLM03Ptr;
 
-class WorkstationCLM03ActionLmm;
-typedef WorkstationCLM03ActionLmm *WorkstationCLM03ActionLmmPtr;
+class WorkstationCLM03Action;
+typedef WorkstationCLM03Action *WorkstationCLM03ActionPtr;
 
 /*********
  * Model *
  *********/
 
-class WorkstationCLM03Model : virtual public WorkstationModel {
+class WorkstationCLM03Model : public WorkstationModel {
 public:
-  WorkstationCLM03Model(const char *name);
   WorkstationCLM03Model();
   ~WorkstationCLM03Model();
-  void parseInit(sg_platf_host_cbarg_t host);
-  WorkstationPtr createResource(const char *name);
+  WorkstationPtr createWorkstation(const char *name);
   double shareResources(double now);
 
   void updateActionsState(double now, double delta);
@@ -39,7 +43,6 @@ public:
                                         double *computation_amount,
                                         double *communication_amount,
                                         double rate);
- xbt_dynar_t getRoute(WorkstationPtr src, WorkstationPtr dst);
  ActionPtr communicate(WorkstationPtr src, WorkstationPtr dst, double size, double rate);
 };
 
@@ -47,9 +50,9 @@ public:
  * Resource *
  ************/
 
-class WorkstationCLM03Lmm : public WorkstationLmm {
+class WorkstationCLM03 : public Workstation {
 public:
-  WorkstationCLM03Lmm(WorkstationModelPtr model, const char* name, xbt_dict_t properties, xbt_dynar_t storage, RoutingEdgePtr netElm, CpuPtr cpu);
+  WorkstationCLM03(WorkstationModelPtr model, const char* name, xbt_dict_t properties, xbt_dynar_t storage, RoutingEdgePtr netElm, CpuPtr cpu);
 
   void updateState(tmgr_trace_event_t event_type, double value, double date);
 
@@ -71,10 +74,6 @@ public:
  * Action *
  **********/
 
-class WorkstationCLM03ActionLmm : public WorkstationActionLmm {
-public:
-  WorkstationCLM03ActionLmm(ModelPtr model, double cost, bool failed): Action(model, cost, failed), WorkstationActionLmm() {};
-};
 
 
 #endif /* SURF_WORKSTATION_CLM03_HPP_ */