SourceXtractorPlusPlus 1.0.3
SourceXtractor++, the next generation SExtractor
Loading...
Searching...
No Matches
PartitionStepConfig.cpp
Go to the documentation of this file.
1
17/*
18 * @file PartitionStepConfig.cpp
19 * @author nikoapos
20 */
21
23
24namespace SourceXtractor {
25
27}
28
30 if (getCurrentState() >= State::FINAL) {
31 throw Elements::Exception() << "addPartitionStep() call on finalized PartitionStepConfig";
32 }
33 m_partition_step_creators.emplace_back(std::move(step_creator));
34}
35
37 if (getCurrentState() < State::FINAL) {
38 throw Elements::Exception() << "getSteps() call on not finalized PartitionStepConfig";
39 }
41 for (auto& creator : m_partition_step_creators) {
42 result.emplace_back(creator(source_factory));
43 }
44 return result;
45}
46
47} /* namespace SourceXtractor */
std::vector< PartitionStepCreator > m_partition_step_creators
std::function< std::shared_ptr< PartitionStep >(std::shared_ptr< SourceFactory >)> PartitionStepCreator
std::vector< std::shared_ptr< PartitionStep > > getSteps(std::shared_ptr< SourceFactory > source_factory) const
void addPartitionStepCreator(PartitionStepCreator step_creator)
T emplace_back(T... args)
T move(T... args)