Skip to content
Snippets Groups Projects
el2008-single.cpp 843 B
#include <ios>
#include <iostream>
#include <signal.h>

#include <EcMasterlibMain.hpp>
#include <device/beckhoff/EL2008.hpp>

void signalHandler(int) {
    std::cout << "cought SIGINT, stopping...\n";
    auto &stack = ecmasterlib::EcMasterlibMain::getInstance();
    stack.stop();
}

int main(int argc, char *argv[]) {

    std::cout << "EL2008 example start\n";

    signal(SIGINT, signalHandler);

    ecmasterlib::device::beckhoff::EL2008 outputs{};
    auto &                                stack = ecmasterlib::EcMasterlibMain::createInstance(argc, argv, outputs);

    sleep(10);

    std::cout << "loop start\n";
    bool state = false;
    while(stack.isRunning()) {
        state = !state;
        std::cout << (state ? "ON" : "OFF") << std::endl;
        outputs(0, state);
        sleep(1);
    }

    std::cout << "main done\n";
}