List of commits:
Subject Hash Author Date (UTC)
rm factory db727ad2da8678aaf2d880f16984f9d2ef76966e mucbuc 2020-02-17 01:44:02
add stack support 23b3106958986d1968920bea60f7f13299525c78 mucbuc 2020-02-17 00:51:17
using base pointer; ; 85d4fafbcbf1555b56897ae1e959b8732afc3f10 mucbuc 2020-02-17 00:36:17
using queue policy 7494ae3537373691ad12c5c8295dcbbbfe7f05f0 mucbuc 2020-02-17 00:34:31
dummy policy 65fae3bca8ed23be81bd75e271e85030a48d1ccb mucbuc 2020-02-16 17:29:07
cleanup 2e46ef599e15758ba6c5f071be163cb870cb6547 mucbuc 2020-02-16 16:32:19
rename elemements to impl_ref 7bf7fbda736a73f86fa460194873cceadca51009 mucbuc 2020-02-16 13:49:38
example doc a65ae924d3426c7de7cb4f3c8e29c8180acf6fde mucbuc 2020-02-13 14:40:59
format source 0288bc49240445da1dd0013feb6e2d157d8a5cea mucbuc 2020-02-13 14:35:16
example builds 701303d8c13b423195f3f0e43c8e5d26af5360c8 mucbuc 2020-02-13 14:33:01
circuit update 6b334746c8f61dbeb8707a9045b83d01ce7259de mucbuc 2020-02-12 13:36:57
interface 8aaad13bc18270477139d6144771cebdba2928d6 mucbuc 2020-01-23 05:38:16
hook_once e800fa98f37b99f456e0f474d2a95eac87dbe020 mucbuc 2020-01-20 17:22:05
twice_size => circuit 07e34c75c67aa4ccaed56d26357bb29f75914005 mucbuc 2020-01-20 12:09:43
reset agent and check before callback 9ce516c3b921eb0e853b17119a4960fdf3936dcf mucbuc 2020-01-19 06:57:31
include statement 2c33dfbb947f7aafd05413b78dea3a0c036cf91b mucbuc 2020-01-17 10:29:01
formating 99ddddbf993037c4bdc573c149b28db242ac0862 mucbuc 2020-01-17 05:30:56
invoke_once b6ee37d690063e31b0300fdef0319d26293f0532 mucbuc 2020-01-17 05:29:52
remove agent 31359a9da855067033433f4310d172dadc813f28 mucbuc 2020-01-16 12:55:13
formati 13721c73e8d359eab3f32a030a35a42b83a341f0 mucbuc 2020-01-16 12:40:00
Commit db727ad2da8678aaf2d880f16984f9d2ef76966e - rm factory
Author: mucbuc
Author date (UTC): 2020-02-17 01:44
Committer name: mucbuc
Committer date (UTC): 2020-02-17 01:44
Parent(s): 23b3106958986d1968920bea60f7f13299525c78
Signing key:
Tree: 0b5bde0bf308aa7bc9b8caa8f9387a0d0ad57db4
File Lines added Lines deleted
EXAMPLE.md 3 3
README.md 9 3
def.json 0 1
src/factory.h 0 25
src/impl/batch.h 2 0
src/impl/batch.hxx 12 0
src/interface.h 6 0
test/src/example.cpp 0 1
File EXAMPLE.md changed (mode: 100644) (index 12bd3ec..c1e8126)
... ... template = `
7 7 ${tbt} ${tbt}
8 8 #include <tmp/src/test.h> #include <tmp/src/test.h>
9 9
10 #include <lib/dynamo/src/factory.h>
11 10 #include <lib/dynamo/src/interface.h> #include <lib/dynamo/src/interface.h>
12 11
13 12 int main() int main()
14 13 { {
15 auto b = om636::control::make_batch<int>();
14 auto b = om636::control::make_stack<int>();
16 15
17 16 int sum { 0 }; int sum { 0 };
18 17
19 18 auto q = b->hook([&](int i) { sum += i; }); auto q = b->hook([&](int i) { sum += i; });
20 19 auto p = b->hook([&](int i) { sum *= i; }); auto p = b->hook([&](int i) { sum *= i; });
21 20 b->invoke(5); b->invoke(5);
22 return sum == 25;
21 ASSERT(sum == 25);
22 return 0;
23 23 } }
24 24 ${tbt} ${tbt}
25 25 `; `;
File README.md changed (mode: 100644) (index d9f92fc..65c2f7a)
... ... namespace control {
25 25 virtual void invoke(T...) = 0; virtual void invoke(T...) = 0;
26 26 }; };
27 27
28 template <typename... T>
29 std::shared_ptr<Batch<T...>> make_queue();
30
31 template <typename... T>
32 std::shared_ptr<Batch<T...>> make_stack();
33
28 34 } // control } // control
29 35 } // om636 } // om636
30 36
 
... ... namespace control {
35 41 ``` ```
36 42 #include <tmp/src/test.h> #include <tmp/src/test.h>
37 43
38 #include <lib/dynamo/src/factory.h>
39 44 #include <lib/dynamo/src/interface.h> #include <lib/dynamo/src/interface.h>
40 45
41 46 int main() int main()
42 47 { {
43 auto b = om636::control::make_batch<int>();
48 auto b = om636::control::make_stack<int>();
44 49
45 50 int sum { 0 }; int sum { 0 };
46 51
47 52 auto q = b->hook([&](int i) { sum += i; }); auto q = b->hook([&](int i) { sum += i; });
48 53 auto p = b->hook([&](int i) { sum *= i; }); auto p = b->hook([&](int i) { sum *= i; });
49 54 b->invoke(5); b->invoke(5);
50 return sum == 25;
55 ASSERT(sum == 25);
56 return 0;
51 57 } }
52 58 ``` ```
53 59
File def.json changed (mode: 100644) (index 14fd57a..2500050)
1 1 { {
2 2 "sources": [ "sources": [
3 3 "src/dynamofwd.h", "src/dynamofwd.h",
4 "src/factory.h",
5 4 "src/interface.h", "src/interface.h",
6 5 "src/impl/batch.h", "src/impl/batch.h",
7 6 "src/impl/batch.hxx" "src/impl/batch.hxx"
File src/factory.h deleted (index 42965c5..0000000)
1 #pragma once
2
3 #include "impl/batch.h"
4
5 #include <lib/circuit/src/impl/queue.h>
6 #include <lib/circuit/src/impl/stack.h>
7
8 namespace om636 {
9
10 namespace control {
11 template <typename... T>
12 std::shared_ptr<Batch<T...>> make_queue()
13 {
14 return std::make_shared<BatchImpl<om636::circuit::QueuePolicy, T...>>();
15 }
16
17 template <typename... T>
18 std::shared_ptr<Batch<T...>> make_stack()
19 {
20 return std::make_shared<BatchImpl<om636::circuit::StackPolicy, T...>>();
21 }
22
23 }
24
25 }
File src/impl/batch.h changed (mode: 100644) (index a7c8267..fe6e79f)
5 5 #include <vector> #include <vector>
6 6
7 7 #include <lib/circuit/src/impl/circuit_host.h> #include <lib/circuit/src/impl/circuit_host.h>
8 #include <lib/circuit/src/impl/queue.h>
9 #include <lib/circuit/src/impl/stack.h>
8 10
9 11 #include "../interface.h" #include "../interface.h"
10 12
File src/impl/batch.hxx changed (mode: 100644) (index 013aa65..877b294)
... ... namespace control {
53 53 { {
54 54 return m_impl; return m_impl;
55 55 } }
56
57 template <typename... T>
58 std::shared_ptr<Batch<T...>> make_queue()
59 {
60 return std::make_shared<BatchImpl<om636::circuit::QueuePolicy, T...>>();
61 }
62
63 template <typename... T>
64 std::shared_ptr<Batch<T...>> make_stack()
65 {
66 return std::make_shared<BatchImpl<om636::circuit::StackPolicy, T...>>();
67 }
56 68 } // control } // control
57 69 } // om636 } // om636
File src/interface.h changed (mode: 100644) (index 7c7a13a..7fc15c8)
... ... namespace control {
19 19 virtual void invoke(T...) = 0; virtual void invoke(T...) = 0;
20 20 }; };
21 21
22 template <typename... T>
23 std::shared_ptr<Batch<T...>> make_queue();
24
25 template <typename... T>
26 std::shared_ptr<Batch<T...>> make_stack();
27
22 28 } // control } // control
23 29 } // om636 } // om636
File test/src/example.cpp changed (mode: 100644) (index bf159f3..3cb1b0a)
1 1 #include <tmp/src/test.h> #include <tmp/src/test.h>
2 2
3 #include <lib/dynamo/src/factory.h>
4 3 #include <lib/dynamo/src/interface.h> #include <lib/dynamo/src/interface.h>
5 4
6 5 int main() int main()
Hints:
Before first commit, do not forget to setup your git environment:
git config --global user.name "your_name_here"
git config --global user.email "your@email_here"

Clone this repository using HTTP(S):
git clone https://rocketgit.com/user/mucbuc/dynamo

Clone this repository using ssh (do not forget to upload a key first):
git clone ssh://rocketgit@ssh.rocketgit.com/user/mucbuc/dynamo

Clone this repository using git:
git clone git://git.rocketgit.com/user/mucbuc/dynamo

You are allowed to anonymously push to this repository.
This means that your pushed commits will automatically be transformed into a merge request:
... clone the repository ...
... make some changes and some commits ...
git push origin main