-#include "Forwarder.hpp"\r
-#include "BasicTask.hpp"\r
-#include "FinalizeTask.hpp"\r
-\r
-#include <Host.hpp>\r
-#include <HostNotFoundException.hpp>\r
-\r
-#include <iostream>\r
-using namespace std;\r
-\r
-MSG_IMPLEMENT_DYNAMIC(Forwarder, Process);\r
-\r
-\r
-int Forwarder::main(int argc, char** argv)\r
-{\r
- cout << "Hello I'm " << getName() << " on " << getHost().getName() << "!" << endl;\r
- \r
- int aliasCount = argc;\r
- \r
- int taskCount = 0;\r
- \r
- Task* taskReceived;\r
- Task* finalizeTask;\r
- BasicTask* basicTask;\r
- \r
- while(true) \r
- {\r
- taskReceived = Task::receive(Host::currentHost().getName());\r
- \r
- if(taskReceived->isInstanceOf("FinalizeTask")) \r
- {\r
- cout <<"[" << getName() << ":" << getHost().getName() << "] " << "All tasks have been dispatched. Let's tell everybody the computation is over." << endl;\r
- \r
- for (int i = 0; i < aliasCount; i++) \r
- {\r
- finalizeTask = new FinalizeTask();\r
- finalizeTask->send(argv[i]);\r
- }\r
- \r
- delete taskReceived;\r
- \r
- break;\r
- }\r
- \r
- basicTask = reinterpret_cast<BasicTask*>(taskReceived);\r
- \r
- cout <<"[" << getName() << ":" << getHost().getName() << "] " << "Received \"" << basicTask->getName() << "\" " << endl;\r
- \r
- cout <<"[" << getName() << ":" << getHost().getName() << "] " << "Sending \"" << basicTask->getName() << "\" to \"" << argv[taskCount % aliasCount] << "\"" << endl;\r
- \r
- basicTask->send(argv[taskCount % aliasCount]);\r
- \r
- taskCount++;\r
- }\r
- \r
- \r
- cout <<"[" << getName() << ":" << getHost().getName() << "] " << "I'm done. See you!" << endl;\r
- \r
- return 0;\r
-}
\ No newline at end of file
+#include "Forwarder.hpp"
+#include "BasicTask.hpp"
+#include "FinalizeTask.hpp"
+
+#include <MsgHost.hpp>
+#include <HostNotFoundException.hpp>
+
+#include <Msg.hpp>
+
+
+MSG_IMPLEMENT_DYNAMIC(Forwarder, Process)
+
+
+int Forwarder::main(int argc, char** argv)
+{
+ info("Hello");
+
+ int aliasCount = argc;
+
+ int taskCount = 0;
+
+ Task* taskReceived;
+ Task* finalizeTask;
+ BasicTask* basicTask;
+
+ while(true)
+ {
+ taskReceived = Task::receive(Host::currentHost().getName());
+
+ if(taskReceived->isInstanceOf("FinalizeTask"))
+ {
+ info("All tasks have been dispatched. Let's tell everybody the computation is over.");
+
+ for (int i = 0; i < aliasCount; i++)
+ {
+ finalizeTask = new FinalizeTask();
+ finalizeTask->send(argv[i]);
+ }
+
+ delete taskReceived;
+
+ break;
+ }
+
+ basicTask = reinterpret_cast<BasicTask*>(taskReceived);
+
+ info(TEXT_("Received \"") + TEXT_(basicTask->getName()) + TEXT_("\" "));
+
+ info(TEXT_("Sending \"") + TEXT_(basicTask->getName()) + TEXT_("\" to \"") + TEXT_(argv[taskCount % aliasCount]) + TEXT_("\""));
+
+ basicTask->send(argv[taskCount % aliasCount]);
+
+ taskCount++;
+ }
+
+
+ info("I'm done. See you!");
+
+ delete this;
+ return 0;
+}