2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
42#include "core/SNodeC.h"
43#include "core/pipe/Pipe.h"
44#include "core/pipe/PipeSink.h"
45#include "core/pipe/PipeSource.h"
47#ifndef DOXYGEN_SHOULD_SKIP_THIS
49#include "log/Logger.h"
57int main(
int argc,
char* argv[]) {
62 pipeSink
.setOnData([&pipeSource](
const char* chunk, std::size_t chunkLen) {
63 const std::string string(chunk, chunkLen);
64 VLOG(1) <<
"Pipe Data: " << string;
71 VLOG(1) <<
"Pipe EOF";
75 VLOG(1) <<
"PipeSink";
79 VLOG(1) <<
"PipeSource";
82 pipeSource
.send("Hello World!");
84 []([[maybe_unused]]
int errnum) {
85 PLOG(ERROR) <<
"Pipe not created";
static void init(int argc, char *argv[])
static int start(const utils::Timeval &timeOut={LONG_MAX, 0})
void setOnError(const std::function< void(int)> &onError)
void setOnEof(const std::function< void()> &onEof)
void setOnData(const std::function< void(const char *, std::size_t)> &onData)
void send(const char *chunk, std::size_t chunkLen)
void send(const std::string &data)
void setOnError(const std::function< void(int)> &onError)
Pipe(const std::function< void(PipeSource &, PipeSink &)> &onSuccess, const std::function< void(int)> &onError)
int main(int argc, char *argv[])