00001 #ifndef _SCHEDULE_H
00002 #define _SCHEDULE_H
00003
00004 #include <fstream>
00005 #include <string>
00006 #include <sst/core/event.h>
00007 #include <sst/core/component.h>
00008 #include <sst/core/link.h>
00009 #include <vector>
00010
00011 using namespace std;
00012 using namespace SST;
00013
00014 class schedule : public Component {
00015 public:
00016 schedule ( ComponentId_t id, Params_t& params );
00017 ~schedule () ;
00018
00019 bool clock ( Cycle_t cycle );
00020 void processEvent( Event* event );
00021 ifstream tasks;
00022 string input_line;
00023
00024 private:
00025 schedule() : Component(-1) {}
00026 friend class boost::serialization::access;
00027
00028 Link* linkToSelf;
00029
00030 Params_t params ;
00031 std::string frequency;
00032
00033 std::vector<int> job_id;
00034 std::vector<int> dur;
00035 std::vector<int> num_nodes;
00036 };
00037
00038 #endif