00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026 #include "Aria.h"
00027
00028
00045 void printStatus(ArModuleLoader::Status status)
00046 {
00047 if (status == ArModuleLoader::STATUS_ALREADY_LOADED)
00048 ArLog::log(ArLog::Terse, "moduleExample: Module already loaded.");
00049 else if (status == ArModuleLoader::STATUS_FAILED_OPEN)
00050 ArLog::log(ArLog::Terse, "moduleExample: Failed to find or open the simpleMod module.");
00051 else if (status == ArModuleLoader::STATUS_INVALID)
00052 ArLog::log(ArLog::Terse, "moduleExample: Invalid file.");
00053 else if (status == ArModuleLoader::STATUS_INIT_FAILED)
00054 ArLog::log(ArLog::Terse, "moduleExample: Module Init failed.");
00055 else if (status == ArModuleLoader::STATUS_SUCCESS)
00056 ArLog::log(ArLog::Terse, "moduleExample: Module succedded.");
00057 else if (status == ArModuleLoader::STATUS_EXIT_FAILED)
00058 ArLog::log(ArLog::Terse, "moduleExample: Module exit sequence failed.");
00059 else if (status == ArModuleLoader::STATUS_NOT_FOUND)
00060 ArLog::log(ArLog::Terse, "moduleExample: Module not found.");
00061 else
00062 ArLog::log(ArLog::Terse, "moduleExample: Module returned unknown status!");
00063 ArLog::log(ArLog::Terse, "");
00064 }
00065
00066 int main()
00067 {
00068 ArModuleLoader::Status status;
00069 ArRobot robot;
00070 std::string str;
00071
00072 Aria::init();
00073
00074
00075 ArLog::log(ArLog::Terse, "moduleExample: Loading the module \"moduleExample_Mod\" with a string argument...");
00076 status=ArModuleLoader::load("./moduleExample_Mod", &robot, (char *)"You've loaded a module!");
00077 printStatus(status);
00078 ArLog::log(ArLog::Terse, "moduleExample: Reloading the module with no argument...");
00079 status=ArModuleLoader::reload("./moduleExample_Mod", &robot);
00080 printStatus(status);
00081
00082 ArLog::log(ArLog::Terse, "moduleExample: Closing the module...");
00083 status=ArModuleLoader::close("./moduleExample_Mod");
00084 printStatus(status);
00085
00086 Aria::shutdown();
00087 return(0);
00088 }