SourceXtractorPlusPlus
0.11
Please provide a description of the project.
SEFramework
SEFramework
Output
Output.h
Go to the documentation of this file.
1
17
/*
18
* Output.h
19
*
20
* Created on: Jun 23, 2016
21
* Author: mschefer
22
*/
23
24
#ifndef _SEFRAMEWORK_PIPELINE_OUTPUT_H_
25
#define _SEFRAMEWORK_PIPELINE_OUTPUT_H_
26
27
#include "
SEUtils/Observable.h
"
28
#include "
SEFramework/Source/SourceInterface.h
"
29
#include "
SEFramework/Source/SourceGroupInterface.h
"
30
31
namespace
SourceXtractor
{
32
33
class
Output
:
34
public
Observer
<std::shared_ptr<SourceInterface>>,
35
public
Observer
<std::shared_ptr<SourceGroupInterface>> {
36
37
public
:
38
39
virtual
~Output
() =
default
;
40
41
virtual
void
handleMessage
(
const
std::shared_ptr<SourceInterface>
& source)
override
{
42
outputSource
(*source);
43
}
44
45
virtual
void
handleMessage
(
const
std::shared_ptr<SourceGroupInterface>
& source_group)
override
{
46
for
(
auto
& source : *source_group) {
47
outputSource
(source);
48
}
49
}
50
51
virtual
void
outputSource
(
const
SourceInterface
& source) = 0;
52
54
virtual
size_t
flush
() = 0;
55
};
56
57
}
58
59
#endif
/* _SEFRAMEWORK_PIPELINE_OUTPUT_H_ */
SourceXtractor::Observer
Observer interface to be used with Observable to implement the Observer pattern.
Definition:
Observable.h:38
std::shared_ptr
STL class.
SourceGroupInterface.h
SourceInterface.h
SourceXtractor::Output::outputSource
virtual void outputSource(const SourceInterface &source)=0
SourceXtractor::Output::handleMessage
virtual void handleMessage(const std::shared_ptr< SourceInterface > &source) override
Definition:
Output.h:41
SourceXtractor
Definition:
Aperture.h:30
SourceXtractor::Output::~Output
virtual ~Output()=default
SourceXtractor::Output::handleMessage
virtual void handleMessage(const std::shared_ptr< SourceGroupInterface > &source_group) override
Definition:
Output.h:45
Observable.h
SourceXtractor::SourceInterface
The SourceInterface is an abstract "source" that has properties attached to it.
Definition:
SourceInterface.h:46
SourceXtractor::Output::flush
virtual size_t flush()=0
SourceXtractor::Output
Definition:
Output.h:35
Generated by
1.8.18