Esempio n. 1
0
void Detector::initialize(int stage) {
    if (stage == inet::INITSTAGE_LAST) {
        // Initialize local variables
        IP = inet::L3AddressResolver().addressOf(
                getParentModule()->getParentModule(),
                inet::L3AddressResolver::ADDR_IPv4).toIPv4();
        faulty = par("faulty");
        monitor = check_and_cast<TrafficMonitor*>(
                getParentModule()->getSubmodule("monitor"));
        WATCH_VECTOR(thresholds);
        WATCH_VECTOR(evaluateNextIter);
    }
}
Esempio n. 2
0
void Detector::handleMessage(cMessage *msg) {
    if (msg->arrivedOn("clock")) {
        // Schedule evaluation just a bit later, so that we have all sketches
        scheduleAt(
                simTime() + simtime_t(getParentModule()->par("interval")) * .8,
                msg);
    } else if (msg->isSelfMessage()) {
        evaluateCores();
        delete msg;
        clearReports();
    } else if (msg->arrivedOn("graphServerIn")) {
        updateCores(check_and_cast<CoresUpdate*>(msg));
    } else if (msg->arrivedOn("reportsIn")) {
        updateReports(check_and_cast<Report*>(msg));
    } else {
        delete msg;
    }
}
Esempio n. 3
0
void OMNeTBattery::handleDepletedEnergy() {
    EV << "[BATTERY]: " << getParentModule()->getFullName() <<" 's battery exhausted" << std::endl;
    residualCapacityInMilliWattSeconds = 0;
    deactivateAllRegisteredDevices();
    recordScalar("nodeEnergyDepletionTimestamp", simTime());
}