SourceXtractorPlusPlus 0.19
SourceXtractor++, the next generation SExtractor
Loading...
Searching...
No Matches
Partition.h
Go to the documentation of this file.
1
23#ifndef _SEFRAMEWORK_PIPELINE_PARTITION_H
24#define _SEFRAMEWORK_PIPELINE_PARTITION_H
25
28
29namespace SourceXtractor {
30
38public:
42 virtual ~PartitionStep() = default;
43
45};
46
56class Partition : public PipelineReceiver<SourceInterface>, public PipelineEmitter<SourceInterface> {
57
58public:
62 virtual ~Partition() = default;
63
66
68 void receiveProcessSignal(const ProcessSourcesEvent& event) override;
69
70private:
72
73}; /* End of Partition class */
74
75} /* namespace SourceXtractor */
76
77#endif
A PartitionStep gets applied on a single Source and can result any number of Sources being outputed....
Definition: Partition.h:37
virtual std::vector< std::unique_ptr< SourceInterface > > partition(std::unique_ptr< SourceInterface > source) const =0
virtual ~PartitionStep()=default
Destructor.
For each Source it receives, applies PartitionSteps and outputs one or more Sources.
Definition: Partition.h:56
void receiveProcessSignal(const ProcessSourcesEvent &event) override
Definition: Partition.cpp:57
std::vector< std::shared_ptr< PartitionStep > > m_steps
Definition: Partition.h:71
void receiveSource(std::unique_ptr< SourceInterface > source) override
Definition: Partition.cpp:31
virtual ~Partition()=default
Destructor.
Event received by SourceGrouping to request the processing of some of the Sources stored.
Definition: PipelineStage.h:33