diff options
author | Andreas Baumann <mail@andreasbaumann.cc> | 2014-10-05 12:39:14 +0200 |
---|---|---|
committer | Andreas Baumann <mail@andreasbaumann.cc> | 2014-10-05 12:39:14 +0200 |
commit | 4174158dc75b5ed892b293b18b7dd5c85aa36f2f (patch) | |
tree | 15833550838d912174c54d05583d5374f03c35e9 /tests | |
parent | d207e5a4f68cf56699b6f59487d3456f1c5e5f01 (diff) | |
download | crawler-4174158dc75b5ed892b293b18b7dd5c85aa36f2f.tar.gz crawler-4174158dc75b5ed892b293b18b7dd5c85aa36f2f.tar.bz2 |
added void * userdata to initModule
Diffstat (limited to 'tests')
-rw-r--r-- | tests/modules/UserData.hpp | 9 | ||||
-rw-r--r-- | tests/modules/test4.MUST | 2 | ||||
-rwxr-xr-x | tests/modules/test4.cpp | 6 | ||||
-rwxr-xr-x | tests/modules/testmod4/TestMod4.cpp | 12 |
4 files changed, 25 insertions, 4 deletions
diff --git a/tests/modules/UserData.hpp b/tests/modules/UserData.hpp new file mode 100644 index 0000000..83b301d --- /dev/null +++ b/tests/modules/UserData.hpp @@ -0,0 +1,9 @@ +#ifndef _USER_DATA_INCLUDED +#define _USER_DATA_INCLUDED + +struct UserData { + int version; + string text; +}; + +#endif diff --git a/tests/modules/test4.MUST b/tests/modules/test4.MUST index a675dba..1d14a0c 100644 --- a/tests/modules/test4.MUST +++ b/tests/modules/test4.MUST @@ -1,5 +1,5 @@ Created common object -test4: Module 4 initModule called +test4: Module 4 initModule called with user data: 47 hello there test4: hello from main test4: hello world from module test4: Module 4 destroyModule called diff --git a/tests/modules/test4.cpp b/tests/modules/test4.cpp index 8e1bfbe..4e71295 100755 --- a/tests/modules/test4.cpp +++ b/tests/modules/test4.cpp @@ -1,6 +1,7 @@ #include "ModuleLoader.hpp" #include "Base.hpp" #include "Common.hpp" +#include "UserData.hpp" #include <vector> #include <string> @@ -20,7 +21,10 @@ int main( void ) #else modules.push_back( ".\\testmod4\\mod_test4.dll" ); #endif - ModuleLoader<Base> loader( modules ); + UserData user_data; + user_data.version = 47; + user_data.text.assign( "hello there" ); + ModuleLoader<Base> loader( modules, (void *)&user_data ); Base *obj = loader.create( "testmod4" ); c.print( "hello from main" ); diff --git a/tests/modules/testmod4/TestMod4.cpp b/tests/modules/testmod4/TestMod4.cpp index cd0578e..de8b1b6 100755 --- a/tests/modules/testmod4/TestMod4.cpp +++ b/tests/modules/testmod4/TestMod4.cpp @@ -1,10 +1,12 @@ #include "TestMod4.hpp" #include "Common.hpp" +#include "UserData.hpp" #include <iostream> #include <vector> #include <string> +#include <sstream> using namespace std; @@ -21,9 +23,15 @@ void Derived::hello( ) Common::instance( ).print( "hello world from module" ); } -static void initModule( ) +static void initModule( void *user_data ) { - Common::instance( ).print( "Module 4 initModule called" ); + UserData *data = (UserData *)user_data; + ostringstream ss; + + ss << "Module 4 initModule called with user data: " + << data->version << " " << data->text; + + Common::instance( ).print( ss.str( ) ); } static void destroyModule( ) |