summaryrefslogtreecommitdiff
path: root/ace/POSIX_CB_Proactor.h
diff options
context:
space:
mode:
Diffstat (limited to 'ace/POSIX_CB_Proactor.h')
-rw-r--r--ace/POSIX_CB_Proactor.h100
1 files changed, 0 insertions, 100 deletions
diff --git a/ace/POSIX_CB_Proactor.h b/ace/POSIX_CB_Proactor.h
deleted file mode 100644
index 5328d5b1cac..00000000000
--- a/ace/POSIX_CB_Proactor.h
+++ /dev/null
@@ -1,100 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file POSIX_CB_Proactor.h
- *
- * $Id$
- *
- * @author Alexander Libman <alibman@ihug.com.au>
- */
-//=============================================================================
-
-#ifndef ACE_POSIX_CB_PROACTOR_H
-#define ACE_POSIX_CB_PROACTOR_H
-
-#include "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if defined (ACE_HAS_AIO_CALLS) && !defined(__Lynx__) && !defined (__FreeBSD__)
-
-#include "ace/Synch_Traits.h"
-#include "ace/Thread_Semaphore.h"
-#include "ace/Null_Semaphore.h"
-
-#include "ace/POSIX_Proactor.h"
-
-#if defined(AIX) || defined(sun) || defined(__APPLE__) || defined (ACE_VXWORKS)
-typedef union sigval sigval_t;
-#endif
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_POSIX_CB_Proactor
- *
- * @brief Implementation of Callback-based Proactor
- * };
- */
-class ACE_Export ACE_POSIX_CB_Proactor : public ACE_POSIX_AIOCB_Proactor
-{
-
-public:
- virtual Proactor_Type get_impl_type (void);
-
- /// Destructor.
- virtual ~ACE_POSIX_CB_Proactor (void);
-
- /// Constructor defines max number asynchronous operations that can
- /// be started at the same time.
- ACE_POSIX_CB_Proactor (size_t max_aio_operations = ACE_AIO_DEFAULT_SIZE);
-
- // This only public so the "extern C" completion function can see it
- // when needed.
- static void aio_completion_func (sigval_t cb_data);
-
-protected:
-
- /**
- * Dispatch a single set of events. If <wait_time> elapses before
- * any events occur, return 0. Return 1 on success i.e., when a
- * completion is dispatched, non-zero (-1) on errors and errno is
- * set accordingly.
- */
- virtual int handle_events (ACE_Time_Value &wait_time);
-
- /**
- * Block indefinitely until at least one event is dispatched.
- * Dispatch a single set of events. If <wait_time> elapses before
- * any events occur, return 0. Return 1 on success i.e., when a
- * completion is dispatched, non-zero (-1) on errors and errno is
- * set accordingly.
- */
- virtual int handle_events (void);
-
- /// Find free slot to store result and aiocb pointer
- virtual ssize_t allocate_aio_slot (ACE_POSIX_Asynch_Result *result);
-
- /// Notify queue of "post_completed" ACE_POSIX_Asynch_Results
- /// called from post_completion method
- virtual int notify_completion (int sig_num);
-
- /**
- * Dispatch a single set of events. If <milli_seconds> elapses
- * before any events occur, return 0. Return 1 if a completion is
- * dispatched. Return -1 on errors.
- */
- int handle_events_i (u_long milli_seconds);
-
- /// semaphore variable to notify
- /// used to wait the first AIO start
- ACE_SYNCH_SEMAPHORE sema_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#endif /* ACE_HAS_AIO_CALLS && !__Lynx__ && !__FreeBSD__ */
-#endif /* ACE_POSIX_CB_PROACTOR_H*/