File: sigc%2B%2B.cpp

package info (click to toggle)
easyloggingpp 9.97.0%2Bdfsg-1
  • links: PTS, VCS
  • area: main
  • in suites: bookworm, bullseye
  • size: 2,840 kB
  • sloc: cpp: 11,415; python: 2,336; sh: 337; makefile: 29
file content (35 lines) | stat: -rw-r--r-- 752 bytes parent folder | download | duplicates (5)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
// Easylogging++ sample for libsigc++
// @author mkhan3189
// @rev 1.0

#include <unistd.h>
#include <sigc++/sigc++.h>
#include "easylogging++.h"

INITIALIZE_EASYLOGGINGPP

class AsyncConnector {
public:
    AsyncConnector() {}
    void sendNow(void) { LOG(INFO) << "Sending data..."; sleep(2); sent.emit(); }
    sigc::signal<void> received;
    sigc::signal<void> sent;
};

void dataReceived(void) {
    LOG(INFO) << "Async data has been received";
}

void dataSent(void) {
    LOG(INFO) << "Async data has been sent";
}

int main(void) {
    AsyncConnector asyncConnection;
    asyncConnection.received.connect(sigc::ptr_fun(dataReceived));
    asyncConnection.sent.connect(sigc::ptr_fun(dataSent));

    asyncConnection.sendNow();

    return 0;
}