summaryrefslogtreecommitdiff
path: root/examples/APG/Streams/RecordingDevice.h
diff options
context:
space:
mode:
Diffstat (limited to 'examples/APG/Streams/RecordingDevice.h')
-rw-r--r--examples/APG/Streams/RecordingDevice.h119
1 files changed, 0 insertions, 119 deletions
diff --git a/examples/APG/Streams/RecordingDevice.h b/examples/APG/Streams/RecordingDevice.h
deleted file mode 100644
index cee3d7154de..00000000000
--- a/examples/APG/Streams/RecordingDevice.h
+++ /dev/null
@@ -1,119 +0,0 @@
-/* -*- C++ -*- */
-// $Id$
-
-#ifndef RECORDING_DEVICE_H
-#define RECORDING_DEVICE_H
-
-#include "ace/FILE_Addr.h"
-#include "ace/Event_Handler.h"
-#include "ace/Log_Msg.h"
-#include "ace/Reactor.h"
-#include "ace/Semaphore.h"
-
-class CallerId;
-class MessageType;
-
-class RecordingDevice
-{
-public:
- RecordingDevice ()
- {
- // Initialize the semaphore so that we don't block on the
- // first call to wait_for_activity().
- }
-
- virtual ~RecordingDevice ()
- {
- }
-
- virtual const ACE_TCHAR *get_name (void) const
- {
- return ACE_TEXT ("UNKNOWN");
- }
-
- virtual int init (int, ACE_TCHAR *[])
- {
- return 0;
- }
-
- // Answer the incoming call
- virtual int answer_call (void) = 0;
-
- // Fetch some form of caller identification at the hardware level.
- virtual CallerId *retrieve_callerId (void) = 0;
-
- // Fetch the message at the location specified by 'addr' and play
- // it for the caller.
- virtual int play_message (ACE_FILE_Addr &addr) = 0;
-
- // Record data from our physical device into the file at the
- // specified address. Return the number of bytes recorded.
- virtual MessageType *record_message (ACE_FILE_Addr &addr) = 0;
-
- // Release the RecordingDevice to accept another incoming call
- virtual void release (void)
- {
- this->release_semaphore ();
- }
-
- // Get the handler of the device so that wait_for_activity() can
- // wait for data to arrive.
- virtual ACE_Event_Handler *get_handler (void) const
- {
- return 0;
- }
-
- virtual RecordingDevice *wait_for_activity (void)
- {
- // Block on a semaphore until it says we're ready to do
- // work.
- ACE_DEBUG ((LM_DEBUG,
- ACE_TEXT ("Waiting for semaphore\n")));
- this->acquire_semaphore ();
-
- // Use the reactor to wait for activity on our handle
- ACE_Reactor reactor;
-
- ACE_Event_Handler *handler = this->get_handler ();
- ACE_DEBUG ((LM_DEBUG,
- ACE_TEXT ("Handler is %@\n"),
- (void *)handler));
-
- reactor.register_handler (this->get_handler (),
- ACE_Event_Handler::READ_MASK);
-
- reactor.handle_events ();
- // Error-check this...
-
- // Leave the semaphore locked so that we'll block until
- // recording_complete() is invoked.
-
- return this;
- }
-
-protected:
- void acquire_semaphore (void)
- {
- this->semaphore_.acquire ();
- }
-
- void release_semaphore (void)
- {
- // Reset the semaphore so that wait_for_activity() will
- // unblock.
- ACE_DEBUG ((LM_DEBUG,
- ACE_TEXT ("Releasing semaphore\n")));
- this->semaphore_.release ();
- }
-
-private:
- ACE_Semaphore semaphore_;
-};
-
-#include "RecordingDevice_Text.h"
-#include "RecordingDevice_USRVM.h"
-#include "RecordingDevice_QC.h"
-
-#include "RecordingDeviceFactory.h"
-
-#endif /* RECORDING_DEVICE_H */