diff options
author | Mike Buland <eichlan@xagasoft.com> | 2010-01-06 17:05:45 +0000 |
---|---|---|
committer | Mike Buland <eichlan@xagasoft.com> | 2010-01-06 17:05:45 +0000 |
commit | 3c7e81d3baba06cb1bf37de84aeaa6cad277652a (patch) | |
tree | 166e9309a0be01e6b4e8591434372e4817a65d76 /src/plugins | |
parent | e809677b1d5a02b93a0be7a9fce8a6b67d0d91be (diff) | |
download | build-3c7e81d3baba06cb1bf37de84aeaa6cad277652a.tar.gz build-3c7e81d3baba06cb1bf37de84aeaa6cad277652a.tar.bz2 build-3c7e81d3baba06cb1bf37de84aeaa6cad277652a.tar.xz build-3c7e81d3baba06cb1bf37de84aeaa6cad277652a.zip |
Wow, ok, well, I added some more error handling, that's positive, also switched
conditions and functions to a plugger system like views, and all of them now
load builtin and external plugins flawlessly. It's actually a lot of fun.
I also added the example/test plugin condition "random" it randomly builds
targets...it's not really useful...
Diffstat (limited to 'src/plugins')
-rw-r--r-- | src/plugins/pluginConditionRandom.cpp | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/src/plugins/pluginConditionRandom.cpp b/src/plugins/pluginConditionRandom.cpp new file mode 100644 index 0000000..42a4e00 --- /dev/null +++ b/src/plugins/pluginConditionRandom.cpp | |||
@@ -0,0 +1,31 @@ | |||
1 | #include "condition.h" | ||
2 | #include <stdlib.h> | ||
3 | |||
4 | class ConditionRandom : public Condition | ||
5 | { | ||
6 | public: | ||
7 | ConditionRandom() | ||
8 | { | ||
9 | } | ||
10 | |||
11 | virtual ~ConditionRandom() | ||
12 | { | ||
13 | } | ||
14 | |||
15 | virtual bool shouldExec( class Runner &, class Target & ) | ||
16 | { | ||
17 | if( (random()/(double)RAND_MAX) >= .5 ) | ||
18 | return true; | ||
19 | return false; | ||
20 | } | ||
21 | |||
22 | virtual Condition *clone() | ||
23 | { | ||
24 | return new ConditionRandom(); | ||
25 | } | ||
26 | }; | ||
27 | |||
28 | #include <bu/plugger.h> | ||
29 | PluginInterface3( pluginConditionRandom, random, ConditionRandom, Condition, | ||
30 | "Mike Buland", 0, 1 ); | ||
31 | |||