summaryrefslogtreecommitdiff
path: root/tests/MT_Reactor_Timer_Test.h
blob: 5e790ca46b72eee84f1dcf1c1103f48a73663166 (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
// $Id$

// ============================================================================
//
// = LIBRARY
//    tests
// 
// = FILENAME
//    MT_Reactor_Timer_Test.h
//
// = DESCRIPTION
//      This file contains class definitions needed for template
//      instantiation in the MT_Reactor_Timer_Test.cpp file.
//
// = AUTHOR
//    Steve Huston
// 
// ============================================================================

#ifndef __MT_REACTOR_TIMER_TEST_H
#define __MT_REACTOR_TIMER_TEST_H

#include "ace/Reactor.h"
#include "ace/Task.h"

#define TIMER_SLOTS 10

class Time_Handler : public ACE_Task<ACE_MT_SYNCH>
{
public:
  Time_Handler();

  void   setup(void);

  virtual int svc (void);
  // Run by a daemon thread to handle deferred processing.

  virtual int handle_timeout (const ACE_Time_Value &tv,
                              const void *arg);

private:
  long		timer_id[TIMER_SLOTS];
  int		step;
  ACE_Reactor	my_reactor;

};

#endif /* __MT_REACTOR_TIMER_TEST_H */