sample/filter/c1i.cpp

/*
  Интерфейс сервера для клиента #1.
*/

#include "c1i.hpp"

#include <oess_1/io/custom/ace/h/Date_Time.h>

#include <so_4/rt/h/rt.hpp>
#include <so_4/rt/h/sol_msg_field_oess_io_custom.hpp>

// Описание агента для SObjectizer.
SOL4_CLASS_START( c1i_t )

  SOL4_MSG_START( msg_request, c1i_t::msg_request )
    // Это поле подлежит ручной сериализации.
    SOL4_MSG_FIELD_OESS_IO_CUSTOM( m_client_request_timestamp )
  SOL4_MSG_FINISH()

  SOL4_MSG_START( msg_reply, c1i_t::msg_reply )
    // Эти поля подлежат ручной сериализации.
    SOL4_MSG_FIELD_OESS_IO_CUSTOM( m_client_request_timestamp )
    SOL4_MSG_FIELD_OESS_IO_CUSTOM( m_server_request_timestamp )
    SOL4_MSG_FIELD_OESS_IO_CUSTOM( m_server_reply_timestamp )
  SOL4_MSG_FINISH()

SOL4_CLASS_FINISH()

// Реализация агента.
c1i_t::c1i_t()
  :
    // Сразу назначаем имя агента.
    base_type_t( agent_name() )
{
}

c1i_t::~c1i_t()
{
}

const std::string &
c1i_t::agent_name()
{
  // Имя глобального агента.
  static std::string name( "a_c1i" );
  return name;
}

const std::string &
c1i_t::agent_type()
{
  // Тип глобального агента. В точности тоже имя,
  // которое указано в SOL4_CLASS_START.
  static std::string type_name( "c1i_t" );
  return type_name;
}


Документация по SObjectizer v.4.4 'Тебуломста'. Последние изменения: Thu Sep 18 10:26:45 2008. Создано системой  doxygen1.5.6 Intervale SourceForge.net Logo