blob: ce1c00bc9777d19cd9b469f8786908f8727a2410 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
|
// -*- C++ -*-
//=============================================================================
/**
* @file Resume_Handle_Deferred.h
*
* $Id$
*
* @author Iliyan Jeliazkov <jeliazkov_i@ociweb.com>
*/
//=============================================================================
#ifndef TAO_RESUME_HANDLE_DEFERRED_H
#define TAO_RESUME_HANDLE_DEFERRED_H
#include /**/ "ace/pre.h"
#include "TAO_Export.h"
#include "ace/Event_Handler.h"
#if !defined (ACE_LACKS_PRAGMA_ONCE)
# pragma once
#endif /* ACE_LACKS_PRAGMA_ONCE */
#include /**/ "tao/Versioned_Namespace.h"
TAO_BEGIN_VERSIONED_NAMESPACE_DECL
class TAO_ORB_Core;
/**
* @class TAO_Resume_Handle_Deferred
*
* @brief A utility class that helps in resuming handlers if TAO uses
* a TP Reactor from ACE. In contrast with the Resume_Handle class
* however, the resumption is performed at the expiration of a timer,
* previously registered with the reactor. TAO_Resume_Handle_Deferred
* will also notify the reactor (reactor->notify())
*/
class TAO_Export TAO_Resume_Handle_Deferred : public ACE_Event_Handler
{
public:
/// Ctor
TAO_Resume_Handle_Deferred (TAO_ORB_Core* orbc, ACE_Event_Handler* h);
/// Destructor
~TAO_Resume_Handle_Deferred (void);
/// Handles the timeout event by resuming the handle and
/// calling the reactor->notify()
virtual int handle_timeout (const ACE_Time_Value &, const void * = 0);
private:
ACE_Event_Handler_var h_;
TAO_ORB_Core * orbc_;
};
TAO_END_VERSIONED_NAMESPACE_DECL
#include /**/ "ace/post.h"
#endif /*TAO_RESUME_HANDLE_DEFERRED_H*/
|