1 #ifndef MSG_NATIVE_HPP
\r
2 #define MSG_NATIVE_HPP
\r
4 // Compilation C++ recquise
\r
6 #error MsgNative.hpp requires C++ compilation (use a .cxx suffix)
\r
14 // Default constructor.
\r
17 // Copy constructor.
\r
18 MsgNative(const MsgNative& rMsgInterface) {}
\r
21 virtual ~MsgNative(){}
\r
26 static void processCreate(const Process& rProcess, const Host& rHost);
\r
28 static int processKillAll(int resetPID);
\r
30 static void processSuspend(const Process& process);
\r
32 static void processKill(const Process& process);
\r
34 static void processResume(const Process& process);
\r
36 static bool processIsSuspended(const Process& process);
\r
38 static Host& processGetHost(const Process& process);
\r
40 static Process& processFromPID(int PID);
\r
42 static int processGetPID(const Process& process);
\r
44 static int processGetPPID(const Process& process);
\r
46 static Process& processSelf(void);
\r
48 static int processSelfPID(void);
\r
50 static int processSelfPPID(void);
\r
52 static void processChangeHost(const Process& process, const Host& host);
\r
54 static void processWaitFor(double seconds);
\r
56 static void processExit(const Process& process);
\r
58 static Host& hostGetByName(const string& name) throw(HostNotFoundException);
\r
60 static string& hostGetName(const Host& host);
\r
62 static int hostGetNumber(void);
\r
64 static Host& hostSelf(void);
\r
66 static double hostGetSpeed(const Host& host);
\r
68 static bool hostIsAvail(const Host& host);
\r
70 static Host[] allHosts(void);
\r
72 static int hostGetLoad(const Host& host);
\r
74 static void taskCreate(const Task& task, const string& name, double computeDuration, double messageSize)
\r
75 throw(NullPointerException, IllegalArgumentException);
\r
77 static Process& taskGetSender(const Task& task);
\r
79 static Host& taskGetSource(const Task& task);
\r
81 static string& taskGetName(const Task& task);
\r
83 static void taskCancel(const Task& task);
\r
85 static void parallelTaskCreate(const Task& pTask, const string& name, Host[]hosts, double[]computeDurations, double[]messageSizes)
\r
86 throw(NullPointerException, IllegalArgumentException);
\r
88 static double taskGetComputeDuration(const Task& task);
\r
90 static double taskGetRemainingDuration(const Task& task);
\r
92 static void taskSetPriority(const Taska task, double priority);
\r
94 static void taskDestroy(const Task& task);
\r
96 static void taskExecute(const Task& task);
\r
98 static Task& taskGet(int channel, double timeout, const Host& host);
\r
100 static void taskSend(const string& alias, const Task& task, double timeout);
\r
102 static Task& taskReceive(const string& alias, double timeout, const Host& host);
\r
104 static int taskListenFrom(const string& alias);
\r
106 static bool taskListen(const string& alias);
\r
108 static int taskListenFromHost(const string& alias, const Host& host);
\r
110 static bool taskProbe(int channel);
\r
112 static int taskGetCommunicatingProcess(int channel);
\r
114 static int taskProbeHost(int channel, const Host& host);
\r
116 static void hostPut(const Host& host, int channel, const Task& task, double timeout);
\r
118 static void hostPutBounded(const Hos&t host, int channel, const Task& task, double max_rate);
\r
120 static void taskSendBounded(const string& alias, const Task& task, double maxrate);
\r
126 #endif // !MSG_NATIVE_HPP