00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00024 #include "config.h"
00025
00026 #include <cassert>
00027
00028 #include <scalestack/kernel/core.h>
00029 #include <scalestack/kernel/module.h>
00030 #include <scalestack/kernel/option.h>
00031
00032 using namespace std;
00033 using namespace scalestack;
00034
00035 static void options(kernel::module& module)
00036 {
00037 module.add_option("option1", "Help1", "BOOL1", "true");
00038 module.add_option("option2", "Help2", "BOOL2", "false");
00039 module.add_option("option3", "Help3", "VALUE_NAME3", "default_value3");
00040 module.add_option("option4", "Help4", "BOOL4", "true");
00041 module.add_option("option5", "Help5", "BOOL5", "false");
00042 module.add_option("option6", "Help6", "VALUE_NAME6", "default_value6");
00043 module.add_option("option7", "Help7", "SIZE7", "7");
00044 module.add_option("option8", "Help8", "LIST8", "1,2,3");
00045 }
00046
00047 static void start(kernel::module& module)
00048 {
00049 assert(module.get_option("option1").get_bool_value() == true);
00050 assert(module.get_option("option2").get_bool_value() == false);
00051 assert(module.get_option("option3").get_value() == "default_value3");
00052 assert(module.get_option("option4").get_bool_value() == true);
00053 assert(module.get_option("option5").get_bool_value() == true);
00054 assert(module.get_option("option6").get_value() == "value6");
00055 assert(module.get_option("option7").get_size_value() == 7);
00056 vector<string> value;
00057 value.push_back("1");
00058 value.push_back("2");
00059 value.push_back("3");
00060 assert(module.get_option("option8").get_list_value() == value);
00061 }
00062
00063 static void run(kernel::module& module)
00064 {
00065 module.get_core().shutdown();
00066 }
00067
00068 SCALESTACK_KERNEL_MODULE(options, start, NULL, run, NULL);