summaryrefslogtreecommitdiff
path: root/TAO/orbsvcs/tests/AVStreams/Use_Case/distributer.h
diff options
context:
space:
mode:
Diffstat (limited to 'TAO/orbsvcs/tests/AVStreams/Use_Case/distributer.h')
-rw-r--r--TAO/orbsvcs/tests/AVStreams/Use_Case/distributer.h289
1 files changed, 0 insertions, 289 deletions
diff --git a/TAO/orbsvcs/tests/AVStreams/Use_Case/distributer.h b/TAO/orbsvcs/tests/AVStreams/Use_Case/distributer.h
deleted file mode 100644
index 9448615708d..00000000000
--- a/TAO/orbsvcs/tests/AVStreams/Use_Case/distributer.h
+++ /dev/null
@@ -1,289 +0,0 @@
-/* -*- C++ -*- */
-// $Id$
-// ============================================================================
-//
-// = LIBRARY
-// TAO/orbsvcs/tests/AVStreams/Three_Stage
-//
-// = FILENAME
-// distributer.h
-//
-// = DESCRIPTION
-// Process to receive data from the sender and send it to the receiver
-//
-// = AUTHOR
-// Yamuna Krishnamurthy <yamuna@cs.wustl.edu>
-//
-// ============================================================================
-
-#ifndef DISTRIBUTER_H
-#define DISTRIBUTER_H
-
-#include "orbsvcs/Naming/Naming_Utils.h"
-//#include "orbsvcs/CosNamingC.h"
-#include "orbsvcs/AV/AVStreams_i.h"
-#include "orbsvcs/AV/Endpoint_Strategy.h"
-#include "orbsvcs/AV/Policy.h"
-
-#include "Connection_Setup_Helper.h"
-
-#define AV_MAX_STREAM_COUNT 2
-// The distributer currently handles only two connections, one from
-// the sender and one from the receiver.
-
-class Distributer;
-
-class Distributer_Receiver_Callback : public TAO_AV_Callback
-{
- // = TITLE
- // Defines a class for the distributer application callback
- // for receiving data.
- //
- // = DESCRIPTION
- // This class overides the methods of the TAO_AV_Callback so the
- // AVStreams can make upcalls to the application.
-
-public:
-
- int receive_frame (ACE_Message_Block *frame,
- TAO_AV_frame_info *frame_info,
- const ACE_Addr &peer_address);
- // Method that is called when there is data to be received from the sender
-
- int handle_destroy (void);
- // Called when the sender has finished reading the file and wants
- // to close down the connection.
-
- void flowname (ACE_CString);
- ACE_CString flowname (void);
- // Accessor methods to set and get the flowname corresponding
- // to the callback
-
-
-protected:
- ACE_CString flowname_;
-
-};
-
-class Distributer_Sender_Callback : public TAO_AV_Callback
-{
- // = TITLE
- // Defines a class for the distributer application callback
- // for receiving data.
- //
- // = DESCRIPTION
- // This class overides the methods of the TAO_AV_Callback so the
- // AVStreams can make upcalls to the application.
-
-public:
-
- int handle_destroy (void);
- // Called when the sender has finished reading the file and wants
- // to close down the connection.
-
- void flowname (ACE_CString);
- ACE_CString flowname (void);
- // Accessor methods to set and get the flowname corresponding
- // to the callback
-
-
-protected:
- ACE_CString flowname_;
-
-};
-
-class Distributer_Receiver_StreamEndPoint : public TAO_Server_StreamEndPoint
-{
- // = TITLE
- // Defines the distributer aplication stream endpoint
- //
- // = DESCRIPTION
- // This is the class that overrides the tao_server_endpoint to handle
- // pre and post connect processing.
-public:
-
-
- int set_protocol_object (const char *,
- TAO_AV_Protocol_Object *object);
- // Store the reference to the protocol object corresponding
- // to the transport
-
- int get_callback (const char *flowname,
- TAO_AV_Callback *&callback);
- // Create the distributer application sender callback.
-
-
-private:
- Distributer_Receiver_Callback callback_;
- // Reference to the application callback.
-};
-
-class Distributer_Sender_StreamEndPoint : public TAO_Client_StreamEndPoint
-{
- // = TITLE
- // Defines the distributer aplication stream endpoint
- //
- // = DESCRIPTION
- // This is the class that overrides the tao_server_endpoint to handle
- // pre and post connect processing.
-public:
-
-
- int set_protocol_object (const char *,
- TAO_AV_Protocol_Object *object);
- // Store the reference to the protocol object corresponding
- // to the transport
-
- int get_callback (const char *flowname,
- TAO_AV_Callback *&callback);
- // Create the distributer application sender callback.
-
-
-private:
- Distributer_Sender_Callback callback_;
- // Reference to the application callback.
-};
-
-
-class Distributer
-{
- // = TITLE
- // Defines the distributer application class.
- //
- // = DESCRIPTION
- // The distributer progarm that acts as intermediate receiver
- // that receives data from the sender process.
-public:
- Distributer (void);
- // Constructor
-
- ~Distributer (void);
- // Destructor.
-
- int init (int argc,
- char **argv,
- CORBA::Environment &);
- // Initialize data components.
-
- int set_protocol_object (const char*,
- TAO_AV_Protocol_Object *object);
- TAO_AV_Protocol_Object* get_protocol_object (const char*);
- // Accessor methods to set/get the protocol object of the receiver/sender
- // process
-
- void set_endpoint (const char* flowname, TAO_StreamEndPoint* endpoint);
- // Set the flowname and teh corresponding endpoint
-
- StreamEndpoint_Set* get_endpoint_set (void);
- // return the endpoint set
-
- StreamCtrl_Map* get_streamctrl_map (void);
- // Return teh stream control hash map
-
- void stream_created (void);
- // Called when stream created
-
- void stream_destroyed (void);
- // Called when stream destroyed
-
- Connection_Setup_Helper *helper (void);
- // Return the co0nnection setup helper
-
- int done (void);
- // Return the flag that suggests orb shutdown.
-
- Protocol_Object_Set* protocol_object_set (void);
- void protocol_object_set (Protocol_Object_Set *);
- // Accessor methods for the protocol object set
-
-protected:
-
- int parse_args (int argc, char **argv);
- // Method to parse the command line arguments.
-
- TAO_AV_Endpoint_Reactive_Strategy_A
- <Distributer_Sender_StreamEndPoint,TAO_VDev,AV_Null_MediaCtrl> a_endpoint_strategy_;
- // The reactive strategy of the distributer receiver.
-
- TAO_AV_Endpoint_Reactive_Strategy_B
- <Distributer_Receiver_StreamEndPoint,TAO_VDev,AV_Null_MediaCtrl> b_endpoint_strategy_;
- // The reactive strategy of the distributer receiver.
-
- TAO_MMDevice *distributer_receiver_mmdevice_;
- // The distributer receiver multimedia device
-
- TAO_MMDevice *distributer_sender_mmdevice_;
- // The distributer receiver multimedia device
-
-
- AVStreams::MMDevice_var distributer_receiver_mmdevice_obj_;
-
- AVStreams::MMDevice_var distributer_sender_mmdevice_obj_;
-
- AVStreams::MMDevice_var sender_mmdevice_;
- int count_;
- // Number of frames sent.
-
- int argc_;
- char **argv_;
-
- ACE_CString filename_;
- // File from which data is read.
-
- ACE_CString address_;
- // Address of the distributer host machine or a multicast address - Default is
- // UDP multicast addess
-
- ACE_CString protocol_;
- // Selected protocol - default is UDP
-
- ACE_CString sender_device_name_;
- // The flow name of the stream set up between the
- // sender and the distributer.
-
- ACE_CString distributer_device_name_;
- // The flow name of the stream set up between the
- // receiver and the distributer.
-
- TAO_StreamCtrl sender_streamctrl_;
- // Video stream controller for the stream between sender and distributer
-
- int use_sfp_;
- // If set to 1 then use sfp as the flow carrier protocol.
- ACE_Message_Block mb;
- // Message block into which data is read from a file and then sent.
-
- int stream_count_;
- // Number of active streams. When a stream is disconnected this
- // count is decremented.
-
- int done_;
- // Flag to indicate orb shutdown
-
- Recv_Obj_Ref_Set recv_obj_ref_set_;
- // Sequence of reciver object references obtained fro, the Naming Service
-
- StreamCtrl_Map streamctrl_map_;
-
- int default_port;
- //Default Port
-
- Protocol_Object_Set protocol_object_set_;
- // Contains a set of flownames and the corresponding protocol objects
-
- StreamEndpoint_Set endpoint_set_;
- // Contains a set of flownames and the corresponding stream endpoints
-
- Connection_Setup_Helper helper_;
- // The connection setuip helper
-
- ACE_CString host_port_;
- // Port number for the receivers
-};
-
-typedef ACE_Singleton<Distributer, ACE_Null_Mutex> DISTRIBUTER;
-
-#endif /*DISTRIBUTER_H*/
-
-
-