initsendercoach.cpp

来自「2009 ROBOCUP 仿真2DSERVER 源码」· C++ 代码 · 共 224 行

CPP
224
字号
// -*-c++-*-/***************************************************************************                              initsendercoach.cpp                  Classes for sending init messages for offline coach                             -------------------    begin                : 2008-02-17    copyright            : (C) 2002 by The RoboCup Soccer Simulator                           Maintenance Group.    email                : sserver-admin@lists.sourceforge.net***************************************************************************//*************************************************************************** *                                                                         * *   This program is free software; you can redistribute it and/or modify  * *   it under the terms of the GNU LGPL as published by the Free Software  * *   Foundation; either version 2 of the License, or (at your option) any  * *   later version.                                                        * *                                                                         * ***************************************************************************/#ifdef HAVE_CONFIG_H#include "config.h"#endif#include "initsendercoach.h"#include "coach.h"#include "field.h"#include "serializer.h"namespace rcss {/*!//===================================================================////  CLASS: InitSenderOfflineCoach////  DESC: Base class for the init protocol for Offline Coaches.////===================================================================*/InitSenderOfflineCoach::FactoryHolder &InitSenderOfflineCoach::factory(){    static FactoryHolder rval;    return rval;}InitSenderOfflineCoach::InitSenderOfflineCoach( const Params & params,                                                const boost::shared_ptr< InitSenderCommon > common )    : InitSender( params.m_transport, common ),      M_serializer( params.m_ser ),      M_self( params.m_self ),      M_stadium( params.m_stadium ){}InitSenderOfflineCoach::~InitSenderOfflineCoach(){}/*!//===================================================================////  CLASS: InitSenderOfflineCoachV1////  DESC: version 1 of the init protocol.////===================================================================*/InitSenderOfflineCoachV1::InitSenderOfflineCoachV1( const Params & params )    : InitSenderOfflineCoach( params,                              boost::shared_ptr< InitSenderCommon >                              ( new InitSenderCommonV1( params.m_transport,                                                        params.m_ser,                                                        params.m_stadium,                                                        (unsigned int)params.m_self.version() ) ) ){}InitSenderOfflineCoachV1::InitSenderOfflineCoachV1( const Params& params,                                                    const boost::shared_ptr< InitSenderCommon > common )    : InitSenderOfflineCoach( params, common ){}InitSenderOfflineCoachV1::~InitSenderOfflineCoachV1(){}voidInitSenderOfflineCoachV1::sendInit(){    serializer().serializeInit( transport() );    transport() << std::ends << std::flush;}voidInitSenderOfflineCoachV1::sendChangedPlayers(){}voidInitSenderOfflineCoachV1::sendScore(){}/*!//===================================================================////  CLASS: InitSenderOfflineCoachV7////  DESC: version 7 of the init protocol.////===================================================================*/InitSenderOfflineCoachV7::InitSenderOfflineCoachV7( const Params & params )    : InitSenderOfflineCoachV1( params,                                boost::shared_ptr< rcss::InitSenderCommon >                                ( new InitSenderCommonV7( params.m_transport,                                                          params.m_ser,                                                          params.m_stadium,                                                          (unsigned int)params.m_self.version() ) ) ){}InitSenderOfflineCoachV7::InitSenderOfflineCoachV7( const Params & params,                                                    const boost::shared_ptr< InitSenderCommon > common )    : InitSenderOfflineCoachV1( params, common ){}InitSenderOfflineCoachV7::~InitSenderOfflineCoachV7(){}/*!//===================================================================////  CLASS: InitSenderOfflineCoachV8////  DESC: version 8 of the init protocol.////===================================================================*/InitSenderOfflineCoachV8::InitSenderOfflineCoachV8( const Params & params )    : InitSenderOfflineCoachV7( params,                                boost::shared_ptr< rcss::InitSenderCommon >                                ( new InitSenderCommonV8( params.m_transport,                                                          params.m_ser,                                                          params.m_stadium,                                                          (unsigned int)params.m_self.version() ) ) ){}InitSenderOfflineCoachV8::InitSenderOfflineCoachV8( const Params & params,                                                    const boost::shared_ptr< InitSenderCommon > common )    : InitSenderOfflineCoachV7( params, common ){}InitSenderOfflineCoachV8::~InitSenderOfflineCoachV8(){}/*!//===================================================================////  Register senders for different versions////===================================================================*/namespace initsender {template< typename Sender >InitSenderOfflineCoach::Ptrcreate( const InitSenderOfflineCoach::Params & params ){    return InitSenderOfflineCoach::Ptr( new Sender( params ) );}RegHolder vc1 = InitSenderOfflineCoach::factory().autoReg( &create< InitSenderOfflineCoachV1 >, 1 );RegHolder vc2 = InitSenderOfflineCoach::factory().autoReg( &create< InitSenderOfflineCoachV1 >, 2 );RegHolder vc3 = InitSenderOfflineCoach::factory().autoReg( &create< InitSenderOfflineCoachV1 >, 3 );RegHolder vc4 = InitSenderOfflineCoach::factory().autoReg( &create< InitSenderOfflineCoachV1 >, 4 );RegHolder vc5 = InitSenderOfflineCoach::factory().autoReg( &create< InitSenderOfflineCoachV1 >, 5 );RegHolder vc6 = InitSenderOfflineCoach::factory().autoReg( &create< InitSenderOfflineCoachV1 >, 6 );RegHolder vc7 = InitSenderOfflineCoach::factory().autoReg( &create< InitSenderOfflineCoachV7 >, 7 );RegHolder vc8 = InitSenderOfflineCoach::factory().autoReg( &create< InitSenderOfflineCoachV8 >, 8 );RegHolder vc9 = InitSenderOfflineCoach::factory().autoReg( &create< InitSenderOfflineCoachV8 >, 9 );RegHolder vc10 = InitSenderOfflineCoach::factory().autoReg( &create< InitSenderOfflineCoachV8 >, 10 );RegHolder vc11 = InitSenderOfflineCoach::factory().autoReg( &create< InitSenderOfflineCoachV8 >, 11 );RegHolder vc12 = InitSenderOfflineCoach::factory().autoReg( &create< InitSenderOfflineCoachV8 >, 12 );RegHolder vc13 = InitSenderOfflineCoach::factory().autoReg( &create< InitSenderOfflineCoachV8 >, 13 );}}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?