www.pudn.com > truetime-1.2-compiled.zip > interference_init.cpp
// Distributed control system: interference node
//
// Generates disturbing network traffic.
#define S_FUNCTION_NAME interference_init
#include "ttkernel.cpp"
// code function
double sender_code(int seg, void *data)
{
double BWshare = 0.0; // Fraction of the network bandwidth
if ((double)rand()/(double)RAND_MAX < BWshare) {
ttSendMsg(1, NULL, 10); // send 10 bytes to myself (no data)
}
return FINISHED;
}
double msgRcvhandler(int seg, void *data)
{
void *msg;
msg = ttGetMsg();
return FINISHED;
}
void init()
{
// Initialize TrueTime kernel
ttInitKernel(0, 0, FP); // nbrOfInputs, nbrOfOutputs, fixed priority
// Sender task
double offset = 0;
double period = 0.001;
double prio = 1.0;
ttCreatePeriodicTask("sender", offset, period, prio, sender_code);
// Initialize network
ttCreateInterruptHandler("msgRcv", prio, msgRcvhandler);
ttInitNetwork(1, "msgRcv"); // node #1 in the network
}
void cleanup() {
}