|
From: <he...@us...> - 2009-06-23 20:54:11
|
Revision: 70
http://simspark.svn.sourceforge.net/simspark/?rev=70&view=rev
Author: hedayat
Date: 2009-06-23 20:54:09 +0000 (Tue, 23 Jun 2009)
Log Message:
-----------
Sending all senses after generating all of them.
Added --script-path option to specifying the startup script
Modified Paths:
--------------
trunk/rcssserver3d/ChangeLog
trunk/rcssserver3d/simspark/main.cpp
trunk/spark/ChangeLog
trunk/spark/lib/oxygen/simulationserver/agentcontrol.cpp
Modified: trunk/rcssserver3d/ChangeLog
===================================================================
--- trunk/rcssserver3d/ChangeLog 2009-06-16 09:53:55 UTC (rev 69)
+++ trunk/rcssserver3d/ChangeLog 2009-06-23 20:54:09 UTC (rev 70)
@@ -1,3 +1,9 @@
+2009-06-24 Hedayat Vatankhah <he...@gr...>
+
+ * simspark/main.cpp:
+ - simspark.rb path should be given using "--script-path" option.
+ - add the new option to --help output
+
2009-06-16 Sander van Dijk <sgv...@gm...>
* simspark/main.cpp
Modified: trunk/rcssserver3d/simspark/main.cpp
===================================================================
--- trunk/rcssserver3d/simspark/main.cpp 2009-06-16 09:53:55 UTC (rev 69)
+++ trunk/rcssserver3d/simspark/main.cpp 2009-06-23 20:54:09 UTC (rev 70)
@@ -82,23 +82,33 @@
GetLog()->Normal()
<< "\nusage: simspark [options] [script]\n"
<< "\noptions:\n"
- << " --help\t print this message.\n"
+ << " --help\t\t\t print this message.\n"
+ << " --script-path PATH\t set the script path (simspark.rb path).\n"
<< "\n";
}
bool SimSpark::ProcessCmdLine(int argc, char* argv[])
{
- if(argc == 1)
- return true;
+ for( int i = 1; i < argc; i++)
+ {
+ if(strcmp( argv[1], "--help" ) == 0)
+ {
+ PrintHelp();
+ return false;
+ }
+ else if(strcmp(argv[i], "--script-path") == 0)
+ {
+ i++;
+ if (i < argc)
+ mScriptPath = argv[i];
+ else
+ {
+ PrintHelp();
+ return false;
+ }
+ }
+ }
- if(argc > 2 || strcmp( argv[0], "--help" ) == 0)
- {
- PrintHelp();
- return false;
- }
-
- mScriptPath = argv[1];
-
return true;
}
Modified: trunk/spark/ChangeLog
===================================================================
--- trunk/spark/ChangeLog 2009-06-16 09:53:55 UTC (rev 69)
+++ trunk/spark/ChangeLog 2009-06-23 20:54:09 UTC (rev 70)
@@ -1,3 +1,9 @@
+2009-06-24 Hedayat Vatankhah <he...@gr...>
+
+ * lib/oxygen/simulationserver/agentcontrol.cpp:
+ - Sending senses to agents after generating all senses, to be (hopefully!) a
+ bit more fare to agents.
+
2009-06-15 Sander van Dijk <sgv...@gm...>
* lib/oxygen/simulationserver/netcontrol.cpp
Modified: trunk/spark/lib/oxygen/simulationserver/agentcontrol.cpp
===================================================================
--- trunk/spark/lib/oxygen/simulationserver/agentcontrol.cpp 2009-06-16 09:53:55 UTC (rev 69)
+++ trunk/spark/lib/oxygen/simulationserver/agentcontrol.cpp 2009-06-23 20:54:09 UTC (rev 70)
@@ -148,10 +148,12 @@
// generate senses for all agents and send them to the
// corresponding net clients
+ int idx = 0;
+ vector<string> sensesArray(mClients.size());
for (
TAddrMap::iterator iter = mClients.begin();
iter != mClients.end();
- ++iter
+ ++iter, idx++
)
{
shared_ptr<Client>& client = (*iter).second;
@@ -164,14 +166,29 @@
}
shared_ptr<PredicateList> senseList = agent->QueryPerceptors();
- string senses = parser->Generate(senseList);
- if (senses.empty())
+ sensesArray[idx] = parser->Generate(senseList);
+ if (sensesArray[idx].empty())
{
continue;
}
- mNetMessage->PrepareToSend(senses);
- SendClientMessage(client,senses);
+ mNetMessage->PrepareToSend(sensesArray[idx]);
}
+
+ // sending the senses
+ idx = 0;
+ for (
+ TAddrMap::iterator iter = mClients.begin();
+ iter != mClients.end();
+ ++iter, idx++
+ )
+ {
+ if (sensesArray[idx].empty())
+ {
+ continue;
+ }
+
+ SendClientMessage(iter->second,sensesArray[idx]);
+ }
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|