-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathmain.cpp
More file actions
22 lines (19 loc) · 770 Bytes
/
main.cpp
File metadata and controls
22 lines (19 loc) · 770 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include "Pipeline.h"
#include "StageFactory.h"
#include <iostream>
#include <memory>
int main()
{
Pipeline<int> p;
p.addStage(StageFactory<int>::create(StageType::MultipleByTwo));
p.addStage(StageFactory<int>::create(StageType::FilterStage));
p.addStage(StageFactory<int>::create(StageType::SumAggregator));
std::vector<int> input = {5, 10, 12};
std::cout << p.run(input) << std::endl;
Pipeline<std::string> p1;
p1.addStage(StageFactory<std::string>::create(StageType::ToUpperStage));
p1.addStage(StageFactory<std::string>::create(StageType::MinLengthFilter));
p1.addStage(StageFactory<std::string>::create(StageType::ConcatAggregator));
std::vector<std::string> v = {"hi", "hello", "world"};
std::cout << p1.run(v);
}