Kezdhetnénk deduktívan: a Doxygen-el legeneráljuk a doksit (librcsc-4.0.0 és agent2d-3.0.0, en.sourceforge.jp/projects/rctools/) és elkezdjük tanulmányozni az OO rendszert.
De induljunk el inkább a játékos ágens main függvényéből! A jelkezelés után a játékos ágens IO multiplexeléssel fut majd. Mindkét esetben végzünk néhány placebo „Helló, Világ!” jellegű módosítást.
A librcsc-4.0.0/rcsc/common/basic_client.cpp forrásban a void
A select visszatérésének else ágába vegyük be a következő triviális feltételvizsgálatot
BasicClient::runOnline( SoccerAgent * agent )if(M_socket->fd(), &read_fds){
// received message, reset wait time
waited_msec = 0;
timeout_count = 0;
agent->handleMessage();
}
sőt, hogy lássunk iv valamit tegyünk be egy kis logolást is
Majd jöhet a librcsc-4.0.0 könyvtárban a make, make install
if(M_socket->fd(), &read_fds){
// received message, reset wait time
waited_msec = 0;
timeout_count = 0;
agent->handleMessage();
std::cerr << "Hello, World!"
}
A agent2d-3.0.0/src/main_player.cpp forrásban ugyancsak tegyünk néhány placebo átalakítást: //sig_action.sa_handler = &sig_exit_handle;
Végül jöhet a agent2d-3.0.0 könyvtárban a make, majd lehet tesztelni a mérkőzés közben az átalakításaink „hatásait”!
//sig_action.sa_flags = 0;
sig_action.sa_handler = sig_exit_handle;
sig_action.sa_flags = SA_RESTART;
std::cerr << "Hello, World!"
<< std::endl;