From: <sv...@ww...> - 2004-06-14 02:52:21
|
Author: wolverine Date: 2004-06-13 19:52:15 -0700 (Sun, 13 Jun 2004) New Revision: 1041 Modified: trunk/CSP/CSPSim/Source/ClientNode.cpp trunk/CSP/CSPSim/Source/Networking/DispatchMessageHandler.cpp Log: Changes for debugging ClientNode with DispatchMessageHandler Browse at: https://www.zerobar.net/viewcvs/viewcvs.cgi?view=rev&rev=1041 Modified: trunk/CSP/CSPSim/Source/ClientNode.cpp =================================================================== --- trunk/CSP/CSPSim/Source/ClientNode.cpp 2004-06-13 22:38:27 UTC (rev 1040) +++ trunk/CSP/CSPSim/Source/ClientNode.cpp 2004-06-14 02:52:15 UTC (rev 1041) @@ -9,7 +9,6 @@ #include <SimData/Archive.h> #include <SimData/Ref.h> #include <SimData/Date.h> -#include <SimData/DataManager.h> #include <KineticsChannels.h> @@ -20,6 +19,7 @@ #include <SimData/FileUtility.h> #include <SimData/GeoPos.h> +#include <osgDB/FileUtils> using bus::Kinetics; @@ -35,6 +35,35 @@ csplog().setLogLevels(CSP_ALL, level); csplog().setOutput("ClientNode.log"); + VirtualBattlefield * battlefield = new VirtualBattlefield(); + battlefield->create(); + simdata::DataManager dataManager; + + // setup osg search path for external data files + std::string image_path = getDataPath("ImagePath"); + std::string model_path = getDataPath("ModelPath"); + std::string font_path = getDataPath("FontPath"); + std::string search_path; + simdata::ospath::addpath(search_path, image_path); + simdata::ospath::addpath(search_path, model_path); + simdata::ospath::addpath(search_path, font_path); + osgDB::setDataFilePathList(search_path); + + // open the primary data archive + std::string cache_path = getCachePath(); + std::string archive_file = simdata::ospath::join(cache_path, "sim.dar"); + try { + simdata::DataArchive *sim = new simdata::DataArchive(archive_file.c_str(), 1); + assert(sim); + dataManager.addArchive(sim); + } + catch (simdata::Exception &e) { + CSP_LOG(APP, ERROR, "Error opening data archive " << archive_file); + CSP_LOG(APP, ERROR, e.getType() << ": " << e.getMessage()); + throw e; + //::exit(0); + } + printf("sizeof(int) = %d\n", sizeof(int)); printf("sizeof(double) = %d\n", sizeof(double)); printf("sizeof(simdata::Vector3) = %d\n", sizeof(simdata::Vector3)); @@ -46,9 +75,6 @@ printf("sizeof(NetworkMessage) = %d\n", sizeof(NetworkMessage)); printf("sizeof(ObjectUpdateMessagePayload) = %d\n", sizeof(ObjectUpdateMessagePayload)); - VirtualBattlefield * battlefield = new VirtualBattlefield(); - battlefield->create(); - simdata::DataManager dataManager; MessageHeader header; header.dumpOffsets(); Modified: trunk/CSP/CSPSim/Source/Networking/DispatchMessageHandler.cpp =================================================================== --- trunk/CSP/CSPSim/Source/Networking/DispatchMessageHandler.cpp 2004-06-13 22:38:27 UTC (rev 1040) +++ trunk/CSP/CSPSim/Source/Networking/DispatchMessageHandler.cpp 2004-06-14 02:52:15 UTC (rev 1041) @@ -18,6 +18,7 @@ void DispatchMessageHandler::process(NetworkMessage * message, NetworkMessenger * messenger) { + CSP_LOG(APP, DEBUG, "DispatchMessageHandler::process()"); NetworkNode * node = message->getOriginatorNode(); unsigned int addr = node->getAddress().getAddress().s_addr; unsigned short port = node->getPort(); @@ -36,12 +37,15 @@ if (remoteObjectWrapper == NULL) { + CSP_LOG(APP, DEBUG, "DispatchMessageHandler::process() - object not found in database so adding it"); // TODO create new object and add it to table. // // set remoteObjectWrapper to value of new object. simdata::Ref<DynamicObject> obj = addRemoteObject(message); + CSP_LOG(APP, DEBUG, "DispatchMessageHandler::process() - wrapping new object"); RemoteObjectWrapper * remoteObjectWrapper = new RemoteObjectWrapper(obj); // TODO add new object to wrapper object + CSP_LOG(APP, DEBUG, "DispatchMessageHandler::process() - putting new object in remote object table"); m_RemoteObjectTable.putRemoteObject( addr, port, objectID, remoteObjectWrapper ); } simdata::Ref<DynamicObject> object = remoteObjectWrapper->getWrappedObject(); @@ -62,11 +66,17 @@ // use hard coded mirage for now. std::string vehicle = g_Config.getPath("Testing", "Vehicle", "sim:vehicles.aircraft.m2k", false); + CSP_LOG(APP, DEBUG, "DispatchMessageHandler::addRemoteObject() - calling dataManager using path: " + << vehicle.c_str()); + simdata::Ref<DynamicObject> ao = _dataManager.getObject(vehicle.c_str()); assert(ao.valid()); + + CSP_LOG(APP, DEBUG, "DispatchMessageHandler::addRemoteObject() - sending update message to new object"); ao->putUpdateMessage(message); + CSP_LOG(APP, DEBUG, "DispatchMessageHandler::addRemoteObject() - adding new object to battlefield"); _virtualBattlefield->addUnit(ao); return ao; } |