sample/filter/c1i.hpp

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

#if !defined( _SAMPLE__FILTER__C1I_HPP_ )
#define _SAMPLE__FILTER__C1I_HPP_

#include <ace/Date_Time.h>

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

/*
  Глобальный агент, сообщениями которого взаимодействуют
  сервер и клиент #1.
*/
class c1i_t :
  public so_4::rt::agent_t
{
  typedef so_4::rt::agent_t base_type_t;
  public :
    c1i_t();
    virtual ~c1i_t();

    virtual const char *
    so_query_type() const;

    virtual void
    so_on_subscription() = 0;

    // Имя единственного агента этого типа.
    static const std::string &
    agent_name();
    
    // Тип этого агента. Нужен для обращения
    // к so_4::api::make_global_agent.
    static const std::string &
    agent_type();

    // Запрос. Отсылается от клиента к серверу.
    struct  msg_request
    {
      // Время инициирования запроса (время клиента).
      ACE_Date_Time m_client_request_timestamp;
    };

    // Ответ. Отсылается сервером клиенту.
    struct  msg_reply
    {
      // Время инициирования запроса (время клиента).
      ACE_Date_Time m_client_request_timestamp;
      // Время получения запроса сервером (время сервера).
      ACE_Date_Time m_server_request_timestamp;
      // Время ответа сервера (время сервера).
      ACE_Date_Time m_server_reply_timestamp;
    };
};

#endif


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