summaryrefslogtreecommitdiff
path: root/ACE/ace/Asynch_Pseudo_Task.h
diff options
context:
space:
mode:
authorWilliam R. Otte <wotte@dre.vanderbilt.edu>2008-03-04 14:51:23 +0000
committerWilliam R. Otte <wotte@dre.vanderbilt.edu>2008-03-04 14:51:23 +0000
commit99aa8c60282c7b8072eb35eb9ac815702f5bf586 (patch)
treebda96bf8c3a4c2875a083d7b16720533c8ffeaf4 /ACE/ace/Asynch_Pseudo_Task.h
parentc4078c377d74290ebe4e66da0b4975da91732376 (diff)
downloadATCD-99aa8c60282c7b8072eb35eb9ac815702f5bf586.tar.gz
undoing accidental deletion
Diffstat (limited to 'ACE/ace/Asynch_Pseudo_Task.h')
-rw-r--r--ACE/ace/Asynch_Pseudo_Task.h73
1 files changed, 73 insertions, 0 deletions
diff --git a/ACE/ace/Asynch_Pseudo_Task.h b/ACE/ace/Asynch_Pseudo_Task.h
new file mode 100644
index 00000000000..235d71411ba
--- /dev/null
+++ b/ACE/ace/Asynch_Pseudo_Task.h
@@ -0,0 +1,73 @@
+// -*- C++ -*-
+
+//=============================================================================
+/**
+ * @file Asynch_Pseudo_Task.h
+ *
+ * $Id$
+ *
+ * @author Alexander Libman <alibman@ihug.com.au>
+ */
+//=============================================================================
+
+#ifndef ACE_ASYNCH_PSEUDO_TASK_H
+#define ACE_ASYNCH_PSEUDO_TASK_H
+
+#include /**/ "ace/pre.h"
+
+#include /**/ "ace/config-all.h"
+
+#if !defined (ACE_LACKS_PRAGMA_ONCE)
+#pragma once
+#endif /* ACE_LACKS_PRAGMA_ONCE */
+
+#include "ace/Reactor.h"
+#include "ace/Select_Reactor.h"
+#include "ace/Task.h"
+
+ACE_BEGIN_VERSIONED_NAMESPACE_DECL
+
+/*
+ * Specialization hook to replace the Reactor with the
+ * concrete Reactor implementation, e.g., select_st,
+ * select_mt etc.
+ */
+//@@ REACTOR_SPL_INCLUDE_FORWARD_DECL_ADD_HOOK
+
+/**
+ * @class ACE_Asynch_Pseudo_Task
+ *
+ */
+class ACE_Export ACE_Asynch_Pseudo_Task : public ACE_Task<ACE_NULL_SYNCH>
+{
+public:
+ ACE_Asynch_Pseudo_Task();
+ virtual ~ACE_Asynch_Pseudo_Task();
+
+ int start (void);
+ int stop (void);
+
+ int register_io_handler (ACE_HANDLE handle,
+ ACE_Event_Handler *handler,
+ ACE_Reactor_Mask mask,
+ int flg_suspend);
+
+ int remove_io_handler (ACE_HANDLE handle);
+ int remove_io_handler (ACE_Handle_Set &set);
+ int resume_io_handler (ACE_HANDLE handle);
+ int suspend_io_handler (ACE_HANDLE handle);
+
+protected:
+ virtual int svc (void);
+
+ /// Should be initialized before reactor_
+ ACE_Select_Reactor select_reactor_;
+
+ ACE_Reactor reactor_;
+};
+
+ACE_END_VERSIONED_NAMESPACE_DECL
+
+#include /**/ "ace/post.h"
+
+#endif /* ACE_ASYNCH_PSEUDO_TASK_H */