SNode.C
Loading...
Searching...
No Matches
testpipe.cpp File Reference
#include "core/SNodeC.h"
#include "core/pipe/Pipe.h"
#include "core/pipe/PipeSink.h"
#include "core/pipe/PipeSource.h"
Include dependency graph for testpipe.cpp:

Go to the source code of this file.

Functions

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

Function Documentation

◆ main()

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

Definition at line 57 of file testpipe.cpp.

57 {
58 core::SNodeC::init(argc, argv);
59
60 const core::pipe::Pipe pipe(
61 []([[maybe_unused]] core::pipe::PipeSource& pipeSource, [[maybe_unused]] core::pipe::PipeSink& pipeSink) {
62 pipeSink.setOnData([&pipeSource](const char* chunk, std::size_t chunkLen) {
63 const std::string string(chunk, chunkLen);
64 VLOG(1) << "Pipe Data: " << string;
65 pipeSource.send(chunk, chunkLen);
66 // pipeSink.disable();
67 // pipeSource.disable();
68 });
69
70 pipeSink.setOnEof([]() {
71 VLOG(1) << "Pipe EOF";
72 });
73
74 pipeSink.setOnError([]([[maybe_unused]] int errnum) {
75 VLOG(1) << "PipeSink";
76 });
77
78 pipeSource.setOnError([]([[maybe_unused]] int errnum) {
79 VLOG(1) << "PipeSource";
80 });
81
82 pipeSource.send("Hello World!");
83 },
84 []([[maybe_unused]] int errnum) {
85 PLOG(ERROR) << "Pipe not created";
86 });
87
88 return core::SNodeC::start();
89}
static void init(int argc, char *argv[])
Definition SNodeC.cpp:54
static int start(const utils::Timeval &timeOut={LONG_MAX, 0})
Definition SNodeC.cpp:60

References core::SNodeC::init(), core::pipe::Pipe::Pipe(), core::pipe::PipeSource::send(), core::pipe::PipeSource::send(), core::pipe::PipeSink::setOnData(), core::pipe::PipeSink::setOnEof(), core::pipe::PipeSink::setOnError(), core::pipe::PipeSource::setOnError(), and core::SNodeC::start().

Here is the call graph for this function: