00001 /* Declaration of the class that represents the results of the simulation process 00002 */ 00003 #ifndef SIMRESULTS_H 00004 #define SIMRESULTS_H 00005 00006 #include <charm++.h> 00007 #include "CentralLB.h" 00008 00009 class LBSimulation 00010 { 00011 public: 00012 static int doSimulation; 00013 static char* dumpFile; 00014 static int dumpStep; 00015 static int dumpStepSize; 00016 static int simStep; 00017 static int simStepSize; 00018 static int simProcs; 00019 static int procsChanged; 00020 00021 static int showDecisionsOnly; 00022 public: 00023 LBSimulation(int numPes_); 00024 ~LBSimulation(); 00025 void reset(); 00026 void SetProcessorLoad(int pe, double load, double bgload); 00027 void PrintSimulationResults(); 00028 void PrintDecisions(LBMigrateMsg *m, char *simFileName, int peCount); 00029 void PrintDifferences(LBSimulation *realSim, BaseLB::LDStats *stats); 00030 private: 00031 LBInfo lbinfo; 00032 int numPes; 00033 friend class CentralLB; // so that we don't have to provide little get/put functions 00034 }; 00035 00036 #endif /* SIMRESULTS_H */