00001 /* 00002 * Copyright 2003 Michael A. Marsh, Cornell University. All rights reserved. 00003 * This software is released under the modified BSD license. 00004 * See the file LICENSE in the top-level directory for details. 00005 */ 00006 // 00007 // $Id: QuorumBuilderExpectNonceEvent.h,v 1.4 2005/01/21 19:44:17 mmarsh Exp $ 00008 // 00009 // $Log: QuorumBuilderExpectNonceEvent.h,v $ 00010 // Revision 1.4 2005/01/21 19:44:17 mmarsh 00011 // Updated for compatibility with Doxygen 1.4.1 00012 // 00013 // Revision 1.3 2004/05/19 15:56:58 mmarsh 00014 // *** empty log message *** 00015 // 00016 // Revision 1.2 2003/11/04 22:31:51 mmarsh 00017 // *** empty log message *** 00018 // 00019 // 00020 00021 #ifndef __CODEX_SERVER_QUORUMBUILDEREXPECTNONCEEVENT_H__ 00022 #define __CODEX_SERVER_QUORUMBUILDEREXPECTNONCEEVENT_H__ 00023 00024 #include "CODEX_Events/Event.h" 00025 #include "QuorumBuilderAct.h" 00026 00027 namespace CODEX_Server 00028 { 00032 class QuorumBuilderExpectNonceEvent : public CODEX_Events::EventBase 00033 { 00034 public : 00036 QuorumBuilderExpectNonceEvent( QuorumBuilderAct* act, int hostNum ) : 00037 CODEX_Events::EventBase( act ), 00038 m_act( act ), 00039 m_hostNum( hostNum ), 00040 m_toRead( 0 ) 00041 {} 00042 00044 virtual ~QuorumBuilderExpectNonceEvent() {} 00045 00047 bool handle() { return m_act->handler( *this ); } 00048 00050 int hostNum() const { return m_hostNum; } 00051 00056 bool read( CODEX_Quorum::RemoteServer* server ); 00057 00059 const CODEX_Quorum::Message& buffer() const { return m_buffer; } 00060 00061 private : 00062 QuorumBuilderAct* m_act; 00063 int m_hostNum; 00064 CODEX_Quorum::Message m_buffer; 00065 int m_toRead; 00066 }; 00067 00068 } 00069 00070 #endif /* __CODEX_SERVER_QUORUMBUILDEREXPECTNONCEEVENT_H__ */
1.4.1