class CpuCas01Model : public simgrid::surf::CpuModel {
public:
CpuCas01Model();
- ~CpuCas01Model();
-
- Cpu *createCpu(simgrid::s4u::Host *host, xbt_dynar_t speedPeak, int pstate,
- double speedScale,
- tmgr_trace_t speedTrace, int core,
- int initiallyOn,
- tmgr_trace_t state_trace) override;
- double shareResourcesFull(double now) override;
- void addTraces() override;
+ ~CpuCas01Model() override;
+
+ Cpu *createCpu(simgrid::s4u::Host *host, xbt_dynar_t speedPerPstate, int core) override;
+ double next_occuring_event_full(double now) override;
ActionList *p_cpuRunningActionSetThatDoesNotNeedBeingChecked;
};
class CpuCas01 : public Cpu {
public:
- CpuCas01(CpuCas01Model *model, simgrid::s4u::Host *host, xbt_dynar_t speedPeak,
- int pstate, double speedScale, tmgr_trace_t speedTrace, int core,
- int initiallyOn, tmgr_trace_t stateTrace) ;
- ~CpuCas01();
- void updateState(tmgr_trace_iterator_t event_type, double value, double date) override;
- CpuAction *execute(double size) override;
+ CpuCas01(CpuCas01Model *model, simgrid::s4u::Host *host, xbt_dynar_t speedPerPstate, int core);
+ ~CpuCas01() override;
+ void apply_event(tmgr_trace_iterator_t event, double value) override;
+ CpuAction *execution_start(double size) override;
CpuAction *sleep(double duration) override;
bool isUsed() override;
- void setStateEvent(tmgr_trace_iterator_t stateEvent);
- void setPowerEvent(tmgr_trace_iterator_t stateEvent);
xbt_dynar_t getSpeedPeakList(); // FIXME: killme to hide our internals
protected:
void onSpeedChange() override;
-
-private:
-
- tmgr_trace_iterator_t p_stateEvent;
- tmgr_trace_iterator_t p_speedEvent;
};
/**********
* Action *
**********/
class CpuCas01Action: public CpuAction {
- friend CpuAction *CpuCas01::execute(double size);
+ friend CpuAction *CpuCas01::execution_start(double size);
friend CpuAction *CpuCas01::sleep(double duration);
public:
CpuCas01Action(Model *model, double cost, bool failed, double speed,
lmm_constraint_t constraint);
-
- ~CpuCas01Action() {};
+ ~CpuCas01Action() override;
};
}