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