Merge pull request #2309 from mitza-oci/warnings
[ACE_TAO.git] / ACE / ace / Monitor_Control / Auto_Update_Starter.h
blobf773b24217c51dd759ca437ffa593af8d70b6b47
1 // -*- C++ -*-
3 //=============================================================================
4 /**
5 * @file Auto_Update_Starter.h
7 * @author Jeff Parsons <j.parsons@vanderbilt.edu>
8 */
9 //=============================================================================
11 #ifndef AUTO_UPDATE_STARTER_H
12 #define AUTO_UPDATE_STARTER_H
14 #include /**/ "ace/pre.h"
16 #include "ace/Task.h"
18 #if !defined (ACE_LACKS_PRAGMA_ONCE)
19 #pragma once
20 #endif /* ACE_LACKS_PRAGMA_ONCE */
22 #if defined (ACE_HAS_MONITOR_FRAMEWORK) && (ACE_HAS_MONITOR_FRAMEWORK == 1)
24 #include "ace/Monitor_Control/Monitor_Control_export.h"
26 ACE_BEGIN_VERSIONED_NAMESPACE_DECL
28 namespace ACE
30 namespace Monitor_Control
32 /**
33 * @class Auto_Update_Starter
35 * @brief Starts reactor event loop that handles registered timers.
37 * For all the monitors that are periodically updated, the reactor
38 * event loop that calls their associated registered timers must
39 * be started in a separate thread so the rest of the application
40 * isn't blocked. A very simple class inheriting from ACE_Task_Base
41 * and overriding the svc() method suffices.
43 class MONITOR_CONTROL_Export Auto_Update_Starter : public ACE_Task_Base
45 public:
46 Auto_Update_Starter ();
48 int svc ();
53 typedef ACE::Monitor_Control::Auto_Update_Starter STARTER;
55 ACE_END_VERSIONED_NAMESPACE_DECL
57 #endif /* ACE_HAS_MONITOR_FRAMEWORK==1 */
59 #include /**/ "ace/post.h"
61 #endif // AUTO_UPDATE_STARTER_H