summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authornaga <naga@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>1999-08-09 20:31:25 +0000
committernaga <naga@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>1999-08-09 20:31:25 +0000
commit732a14fb8b9d82537a05526890b8918bee6e33e7 (patch)
tree0979dfa2e851ae0f85e12bed7f9e9b6233835bc7
parentb768d641012224b889c2cc7121d3d8f696986b73 (diff)
downloadATCD-732a14fb8b9d82537a05526890b8918bee6e33e7.tar.gz
*** empty log message ***
-rw-r--r--TAO/ChangeLog-99c52
-rw-r--r--TAO/orbsvcs/orbsvcs/Makefile585
-rw-r--r--TAO/orbsvcs/tests/AVStreams/Full_Profile/ftp.cpp138
-rw-r--r--TAO/orbsvcs/tests/AVStreams/Full_Profile/ftp.h49
-rw-r--r--TAO/orbsvcs/tests/AVStreams/Full_Profile/server.cpp48
-rw-r--r--TAO/orbsvcs/tests/AVStreams/Full_Profile/server.h31
-rw-r--r--TAO/orbsvcs/tests/AVStreams/Multicast/ftp.cpp245
-rw-r--r--TAO/orbsvcs/tests/AVStreams/Multicast/ftp.h54
-rw-r--r--TAO/orbsvcs/tests/AVStreams/Multicast/server.cpp3
-rw-r--r--TAO/orbsvcs/tests/AVStreams/Multicast/server.h3
-rw-r--r--TAO/orbsvcs/tests/AVStreams/Multicast_Full_Profile/ftp.cpp273
-rw-r--r--TAO/orbsvcs/tests/AVStreams/Multicast_Full_Profile/ftp.h95
-rw-r--r--TAO/orbsvcs/tests/AVStreams/Multicast_Full_Profile/server.cpp42
-rw-r--r--TAO/orbsvcs/tests/AVStreams/Multicast_Full_Profile/server.h33
-rw-r--r--TAO/orbsvcs/tests/AVStreams/Pluggable/Makefile2
-rw-r--r--TAO/orbsvcs/tests/AVStreams/Pluggable/ftp.cpp179
-rw-r--r--TAO/orbsvcs/tests/AVStreams/Pluggable/ftp.h42
-rw-r--r--TAO/orbsvcs/tests/AVStreams/Pluggable/server.cpp12
-rw-r--r--TAO/orbsvcs/tests/AVStreams/Pluggable/server.h8
19 files changed, 1015 insertions, 879 deletions
diff --git a/TAO/ChangeLog-99c b/TAO/ChangeLog-99c
index 271a50aab51..a751ec829dc 100644
--- a/TAO/ChangeLog-99c
+++ b/TAO/ChangeLog-99c
@@ -1,17 +1,43 @@
-Thu Jul 29 22:48:54 1999 Balachandran Natarajan <bala@cs.wustl.edu>
-
- * tests/MProfile/README:
- * tests/MProfile/test_i.cpp:
- * tests/MProfile/test_i.h:
- * tests/MProfile/client.cpp:
- * tests/MProfile/server.cpp:
- * tests/MProfile/test.idl
- * tests/MProfile/Makefile:
- * tests/MProfile/client.dsp:
- * tests/MProfile/server.dsp:
- * tests/MProfile/MProfile.dsw: An example application that use IOR
- merging to demonstrate FT aspects.
+Mon Aug 9 15:25:49 1999 Nagarajan Surendran <naga@cs.wustl.edu>
+ * orbsvcs/orbsvcs/AV/:
+ Split the Transport files for different protocols like UDP and
+ TCP seperate files. Also added a new Protocol_Factory.{h,cpp}
+ which contains the factory information. Added new flow protocol
+ classes and remodelled the architecture with true layering
+ between the Protocol_Object and the Transport class.
+
+Tue Aug 3 14:24:21 1999 Nagarajan Surendran <naga@cs.wustl.edu>
+
+ * orbsvcs/orbsvcs/AV/AVStreams_i.{h,cpp} : Defined the
+ TAO_String_Hash_Key from Trader.{h,cpp} with TAO_Has_Trader
+ flags so it gets defined if Trader is not defined. Added code to
+ set the source ids for flow producers. Fixed a bug in
+ add_producer code which wont add a second producer.
+
+ * orbsvcs/orbsvcs/AV/Flows_T.{h,cpp}: Templatized the FDev by the
+ concrete producer and consumer and also moved them to the
+ separate files.
+
+ * orbsvcs/orbsvcs/AV/AV_Core.{h,cpp}: Moved the AV_Core class
+ to this file.
+
+ * orbsvcs/orbsvcs/AV/AVStreams_i.i: Inlined all the small
+ functions in TAO_AV_Qos class.
+
+ * orbsvcs/orbsvcs/AV/Transport.i: Moved all inline functions to
+ this file.
+
+ * orbsvcs/orbsvcs/AV/Policy.h: Added a new send_frame on the
+ protocol object to send iovecs.
+
+ * orbsvcs/orbsvcs/AV/RTP.{h,cpp}: Added an implementation for
+ send_frame using iovecs. Also fixed a bug in the creation of
+ RTCP_Flow_Handler in the UDP_MCast_Connector.
+
+ * orbsvcs/orbsvcs/AV/FlowSpec_Entry.{h,i,cpp}: Moved all the
+ FlowSpec_Entry class code to a separate file.
+
Mon Jul 26 18:27:56 1999 Nagarajan Surendran <naga@cs.wustl.edu>
* orbsvcs/orbsvcs/AV/RTCP.{h,cpp}:
diff --git a/TAO/orbsvcs/orbsvcs/Makefile b/TAO/orbsvcs/orbsvcs/Makefile
index 88100275b0b..de812c155f9 100644
--- a/TAO/orbsvcs/orbsvcs/Makefile
+++ b/TAO/orbsvcs/orbsvcs/Makefile
@@ -75,14 +75,22 @@ ifneq (,$(findstring AV,$(TAO_ORBSVCS)))
AV/Endpoint_Strategy \
AV/Endpoint_Strategy_T\
AV/Transport\
- AV/sfp \
- AV/MCast\
- AV/RTP\
+ AV/TCP\
+ AV/UDP\
AV/Policy\
- AV/Nil\
- AV/RTCP\
+ AV/Protocol_Factory\
+ AV/MCast\
AV/source\
- AV/media-timer
+ AV/media-timer\
+ AV/RTCP\
+ AV/RTP
+# AV/sfp \
+# AV/MCast\
+# AV/RTP\
+# AV/Policy\
+# AV/RTCP\
+# AV/source\
+# AV/media-timer
endif # AV
ifneq (,$(findstring Event2,$(TAO_ORBSVCS)))
@@ -3278,8 +3286,8 @@ ORBSVCS_COMPONENTS:
AV/FlowSpec_Entry.i AV/AVStreams_i.i AV/sfp.h \
$(TAO_ROOT)/orbsvcs/orbsvcs/sfpC.h \
$(TAO_ROOT)/orbsvcs/orbsvcs/sfpC.i \
- AV/Policy.h AV/Policy.i AV/MCast.h AV/MCast.i AV/RTCP.h AV/source.h \
- AV/source.i
+ AV/Policy.h AV/Policy.i AV/MCast.h AV/Protocol_Factory.h AV/MCast.i \
+ AV/UDP.h AV/UDP.i AV/RTCP.h AV/source.h AV/source.i
.obj/FlowSpec_Entry.o .obj/FlowSpec_Entry.so .shobj/FlowSpec_Entry.o .shobj/FlowSpec_Entry.so: AV/FlowSpec_Entry.cpp AV/FlowSpec_Entry.h \
$(TAO_ROOT)/orbsvcs/orbsvcs/orbsvcs_export.h \
$(ACE_ROOT)/ace/OS.h \
@@ -4947,10 +4955,10 @@ ORBSVCS_COMPONENTS:
AV/FlowSpec_Entry.i AV/AVStreams_i.i AV/sfp.h \
$(TAO_ROOT)/orbsvcs/orbsvcs/sfpC.h \
$(TAO_ROOT)/orbsvcs/orbsvcs/sfpC.i \
- AV/Policy.h AV/Policy.i AV/MCast.h AV/MCast.i AV/Nil.h AV/RTP.h \
- AV/RTCP.h AV/source.h AV/source.i
-.obj/sfp.o .obj/sfp.so .shobj/sfp.o .shobj/sfp.so: AV/sfp.cpp AV/sfp.h \
- $(TAO_ROOT)/orbsvcs/orbsvcs/orbsvcs_export.h \
+ AV/Policy.h AV/Policy.i AV/MCast.h AV/Protocol_Factory.h AV/MCast.i \
+ AV/UDP.h AV/UDP.i AV/Nil.h AV/RTP.h AV/RTCP.h AV/source.h AV/source.i \
+ AV/TCP.h
+.obj/TCP.o .obj/TCP.so .shobj/TCP.o .shobj/TCP.so: AV/TCP.cpp AV/TCP.h \
$(ACE_ROOT)/ace/OS.h \
$(ACE_ROOT)/ace/inc_user_config.h \
$(ACE_ROOT)/ace/config-sunos5.6.h \
@@ -4966,8 +4974,14 @@ ORBSVCS_COMPONENTS:
$(ACE_ROOT)/ace/ACE.i \
$(ACE_ROOT)/ace/Log_Priority.h \
$(ACE_ROOT)/ace/Log_Record.i \
- $(TAO_ROOT)/orbsvcs/orbsvcs/sfpC.h \
- $(TAO_ROOT)/tao/corba.h \
+ AV/Protocol_Factory.h \
+ $(ACE_ROOT)/ace/Service_Object.h \
+ $(ACE_ROOT)/ace/Shared_Object.h \
+ $(ACE_ROOT)/ace/Shared_Object.i \
+ $(ACE_ROOT)/ace/Event_Handler.h \
+ $(ACE_ROOT)/ace/Event_Handler.i \
+ $(ACE_ROOT)/ace/Service_Object.i \
+ AV/Policy.h $(TAO_ROOT)/tao/TAO.h \
$(TAO_ROOT)/tao/corbafwd.h \
$(ACE_ROOT)/ace/CDR_Stream.h \
$(ACE_ROOT)/ace/Message_Block.h \
@@ -4982,8 +4996,6 @@ ORBSVCS_COMPONENTS:
$(ACE_ROOT)/ace/SV_Semaphore_Complex.i \
$(ACE_ROOT)/ace/Synch.i \
$(ACE_ROOT)/ace/Synch_T.h \
- $(ACE_ROOT)/ace/Event_Handler.h \
- $(ACE_ROOT)/ace/Event_Handler.i \
$(ACE_ROOT)/ace/Synch_T.i \
$(ACE_ROOT)/ace/Thread.h \
$(ACE_ROOT)/ace/Thread.i \
@@ -5021,11 +5033,30 @@ ORBSVCS_COMPONENTS:
$(TAO_ROOT)/tao/orbconf.h \
$(ACE_ROOT)/ace/CORBA_macros.h \
$(TAO_ROOT)/tao/corbafwd.i \
+ $(TAO_ROOT)/tao/POAC.h \
+ $(TAO_ROOT)/tao/PolicyC.h \
+ $(TAO_ROOT)/tao/CurrentC.h \
+ $(TAO_ROOT)/tao/Object.h \
+ $(TAO_ROOT)/tao/Object.i \
+ $(TAO_ROOT)/tao/CurrentC.i \
+ $(TAO_ROOT)/tao/CDR.h \
+ $(TAO_ROOT)/tao/Typecode.h \
+ $(TAO_ROOT)/tao/Exception.h \
+ $(TAO_ROOT)/tao/Exception.i \
+ $(TAO_ROOT)/tao/Typecode.i \
+ $(TAO_ROOT)/tao/CDR.i \
+ $(TAO_ROOT)/tao/Sequence.h \
+ $(TAO_ROOT)/tao/Managed_Types.h \
+ $(TAO_ROOT)/tao/Managed_Types.i \
+ $(TAO_ROOT)/tao/Sequence.i \
+ $(TAO_ROOT)/tao/Sequence_T.h \
+ $(TAO_ROOT)/tao/Sequence_T.i \
+ $(TAO_ROOT)/tao/Sequence_T.cpp \
+ $(TAO_ROOT)/tao/PolicyC.i \
$(TAO_ROOT)/tao/Environment.h \
$(TAO_ROOT)/tao/Environment.i \
+ $(TAO_ROOT)/tao/POAC.i \
$(TAO_ROOT)/tao/ORB.h \
- $(TAO_ROOT)/tao/Exception.h \
- $(TAO_ROOT)/tao/Exception.i \
$(TAO_ROOT)/tao/IOR_LookupTable.h \
$(ACE_ROOT)/ace/Hash_Map_Manager.h \
$(ACE_ROOT)/ace/Functor.h \
@@ -5038,10 +5069,6 @@ ORBSVCS_COMPONENTS:
$(ACE_ROOT)/ace/Hash_Map_Manager_T.i \
$(ACE_ROOT)/ace/Hash_Map_Manager_T.cpp \
$(ACE_ROOT)/ace/Service_Config.h \
- $(ACE_ROOT)/ace/Service_Object.h \
- $(ACE_ROOT)/ace/Shared_Object.h \
- $(ACE_ROOT)/ace/Shared_Object.i \
- $(ACE_ROOT)/ace/Service_Object.i \
$(ACE_ROOT)/ace/Service_Config.i \
$(ACE_ROOT)/ace/Reactor.h \
$(ACE_ROOT)/ace/Handle_Set.h \
@@ -5054,34 +5081,20 @@ ORBSVCS_COMPONENTS:
$(ACE_ROOT)/ace/Reactor_Impl.h \
$(ACE_ROOT)/ace/Svc_Conf_Tokens.h \
$(TAO_ROOT)/tao/Services.h \
- $(TAO_ROOT)/tao/Sequence.h \
- $(TAO_ROOT)/tao/Managed_Types.h \
- $(TAO_ROOT)/tao/Managed_Types.i \
- $(TAO_ROOT)/tao/Sequence.i \
- $(TAO_ROOT)/tao/Sequence_T.h \
- $(TAO_ROOT)/tao/Sequence_T.i \
- $(TAO_ROOT)/tao/Sequence_T.cpp \
$(TAO_ROOT)/tao/Services.i \
$(TAO_ROOT)/tao/IORManipulation.h \
- $(TAO_ROOT)/tao/Object.h \
- $(TAO_ROOT)/tao/Object.i \
$(TAO_ROOT)/tao/IORS.h \
$(TAO_ROOT)/tao/IORC.h \
- $(TAO_ROOT)/tao/CDR.h \
- $(TAO_ROOT)/tao/Typecode.h \
- $(TAO_ROOT)/tao/Typecode.i \
- $(TAO_ROOT)/tao/CDR.i \
$(TAO_ROOT)/tao/IORC.i \
$(TAO_ROOT)/tao/Servant_Base.h \
- $(TAO_ROOT)/tao/POAC.h \
- $(TAO_ROOT)/tao/PolicyC.h \
- $(TAO_ROOT)/tao/CurrentC.h \
- $(TAO_ROOT)/tao/CurrentC.i \
- $(TAO_ROOT)/tao/PolicyC.i \
- $(TAO_ROOT)/tao/POAC.i \
$(TAO_ROOT)/tao/Servant_Base.i \
$(TAO_ROOT)/tao/IORS.i \
$(TAO_ROOT)/tao/ORB.i \
+ $(TAO_ROOT)/tao/debug.h \
+ $(TAO_ROOT)/orbsvcs/orbsvcs/orbsvcs_export.h \
+ AV/Policy.i AV/FlowSpec_Entry.h AV/AV_Core.h \
+ $(TAO_ROOT)/orbsvcs/orbsvcs/AVStreamsC.h \
+ $(TAO_ROOT)/tao/corba.h \
$(TAO_ROOT)/tao/Any.h \
$(TAO_ROOT)/tao/Any.i \
$(TAO_ROOT)/tao/NVList.h \
@@ -5210,24 +5223,11 @@ ORBSVCS_COMPONENTS:
$(TAO_ROOT)/tao/ObjectIDList.h \
$(TAO_ROOT)/tao/ObjectIDList.i \
$(TAO_ROOT)/tao/WrongTransactionC.h \
- $(TAO_ROOT)/orbsvcs/orbsvcs/sfpC.i \
- $(ACE_ROOT)/ace/SOCK_Dgram.h \
- $(ACE_ROOT)/ace/SOCK.h \
- $(ACE_ROOT)/ace/Addr.h \
- $(ACE_ROOT)/ace/Addr.i \
- $(ACE_ROOT)/ace/IPC_SAP.h \
- $(ACE_ROOT)/ace/IPC_SAP.i \
- $(ACE_ROOT)/ace/SOCK.i \
- $(ACE_ROOT)/ace/SOCK_Dgram.i \
- $(ACE_ROOT)/ace/INET_Addr.h \
- $(ACE_ROOT)/ace/INET_Addr.i \
- AV/Policy.h $(TAO_ROOT)/tao/TAO.h \
- AV/Policy.i AV/MCast.h AV/FlowSpec_Entry.h AV/AV_Core.h \
- $(TAO_ROOT)/orbsvcs/orbsvcs/AVStreamsC.h \
$(TAO_ROOT)/orbsvcs/orbsvcs/CosPropertyServiceC.h \
$(TAO_ROOT)/orbsvcs/orbsvcs/CosPropertyServiceC.i \
$(TAO_ROOT)/orbsvcs/orbsvcs/AVStreamsC.i \
- AV/Transport.h \
+ $(ACE_ROOT)/ace/Addr.h \
+ $(ACE_ROOT)/ace/Addr.i AV/Transport.h \
$(ACE_ROOT)/ace/Acceptor.h \
$(ACE_ROOT)/ace/Svc_Handler.h \
$(ACE_ROOT)/ace/Task.h \
@@ -5250,7 +5250,13 @@ ORBSVCS_COMPONENTS:
$(ACE_ROOT)/ace/SOCK_Acceptor.h \
$(ACE_ROOT)/ace/SOCK_Stream.h \
$(ACE_ROOT)/ace/SOCK_IO.h \
+ $(ACE_ROOT)/ace/SOCK.h \
+ $(ACE_ROOT)/ace/IPC_SAP.h \
+ $(ACE_ROOT)/ace/IPC_SAP.i \
+ $(ACE_ROOT)/ace/SOCK.i \
$(ACE_ROOT)/ace/SOCK_IO.i \
+ $(ACE_ROOT)/ace/INET_Addr.h \
+ $(ACE_ROOT)/ace/INET_Addr.i \
$(ACE_ROOT)/ace/SOCK_Stream.i \
$(ACE_ROOT)/ace/Time_Value.h \
$(ACE_ROOT)/ace/SOCK_Acceptor.i \
@@ -5259,10 +5265,11 @@ ORBSVCS_COMPONENTS:
$(ACE_ROOT)/ace/Connector.cpp \
$(ACE_ROOT)/ace/SOCK_Connector.h \
$(ACE_ROOT)/ace/SOCK_Connector.i \
- AV/Transport.i AV/FlowSpec_Entry.i \
+ $(ACE_ROOT)/ace/SOCK_Dgram.h \
+ $(ACE_ROOT)/ace/SOCK_Dgram.i \
+ AV/Transport.i AV/FlowSpec_Entry.i AV/AVStreams_i.h \
$(ACE_ROOT)/ace/SOCK_Dgram_Mcast.h \
$(ACE_ROOT)/ace/SOCK_Dgram_Mcast.i \
- AV/MCast.i AV/AVStreams_i.h \
$(ACE_ROOT)/ace/ATM_Addr.h \
$(ACE_ROOT)/ace/ATM_Addr.i \
$(ACE_ROOT)/ace/Process.h \
@@ -5293,11 +5300,8 @@ ORBSVCS_COMPONENTS:
$(TAO_ROOT)/orbsvcs/orbsvcs/Null_MediaCtrlS_T.i \
$(TAO_ROOT)/orbsvcs/orbsvcs/Null_MediaCtrlS_T.cpp \
$(TAO_ROOT)/orbsvcs/orbsvcs/Null_MediaCtrlS.i \
- AV/AVStreams_i.i \
- $(ACE_ROOT)/ace/ARGV.h \
- $(ACE_ROOT)/ace/ARGV.i
-.obj/MCast.o .obj/MCast.so .shobj/MCast.o .shobj/MCast.so: AV/MCast.cpp AV/MCast.h AV/FlowSpec_Entry.h \
- $(TAO_ROOT)/orbsvcs/orbsvcs/orbsvcs_export.h \
+ AV/AVStreams_i.i
+.obj/UDP.o .obj/UDP.so .shobj/UDP.o .shobj/UDP.so: AV/UDP.cpp AV/UDP.h \
$(ACE_ROOT)/ace/OS.h \
$(ACE_ROOT)/ace/inc_user_config.h \
$(ACE_ROOT)/ace/config-sunos5.6.h \
@@ -5313,8 +5317,14 @@ ORBSVCS_COMPONENTS:
$(ACE_ROOT)/ace/ACE.i \
$(ACE_ROOT)/ace/Log_Priority.h \
$(ACE_ROOT)/ace/Log_Record.i \
- AV/AV_Core.h \
- $(TAO_ROOT)/tao/TAO.h \
+ AV/Protocol_Factory.h \
+ $(ACE_ROOT)/ace/Service_Object.h \
+ $(ACE_ROOT)/ace/Shared_Object.h \
+ $(ACE_ROOT)/ace/Shared_Object.i \
+ $(ACE_ROOT)/ace/Event_Handler.h \
+ $(ACE_ROOT)/ace/Event_Handler.i \
+ $(ACE_ROOT)/ace/Service_Object.i \
+ AV/Policy.h $(TAO_ROOT)/tao/TAO.h \
$(TAO_ROOT)/tao/corbafwd.h \
$(ACE_ROOT)/ace/CDR_Stream.h \
$(ACE_ROOT)/ace/Message_Block.h \
@@ -5329,8 +5339,6 @@ ORBSVCS_COMPONENTS:
$(ACE_ROOT)/ace/SV_Semaphore_Complex.i \
$(ACE_ROOT)/ace/Synch.i \
$(ACE_ROOT)/ace/Synch_T.h \
- $(ACE_ROOT)/ace/Event_Handler.h \
- $(ACE_ROOT)/ace/Event_Handler.i \
$(ACE_ROOT)/ace/Synch_T.i \
$(ACE_ROOT)/ace/Thread.h \
$(ACE_ROOT)/ace/Thread.i \
@@ -5404,10 +5412,6 @@ ORBSVCS_COMPONENTS:
$(ACE_ROOT)/ace/Hash_Map_Manager_T.i \
$(ACE_ROOT)/ace/Hash_Map_Manager_T.cpp \
$(ACE_ROOT)/ace/Service_Config.h \
- $(ACE_ROOT)/ace/Service_Object.h \
- $(ACE_ROOT)/ace/Shared_Object.h \
- $(ACE_ROOT)/ace/Shared_Object.i \
- $(ACE_ROOT)/ace/Service_Object.i \
$(ACE_ROOT)/ace/Service_Config.i \
$(ACE_ROOT)/ace/Reactor.h \
$(ACE_ROOT)/ace/Handle_Set.h \
@@ -5429,6 +5433,9 @@ ORBSVCS_COMPONENTS:
$(TAO_ROOT)/tao/Servant_Base.i \
$(TAO_ROOT)/tao/IORS.i \
$(TAO_ROOT)/tao/ORB.i \
+ $(TAO_ROOT)/tao/debug.h \
+ $(TAO_ROOT)/orbsvcs/orbsvcs/orbsvcs_export.h \
+ AV/Policy.i AV/FlowSpec_Entry.h AV/AV_Core.h \
$(TAO_ROOT)/orbsvcs/orbsvcs/AVStreamsC.h \
$(TAO_ROOT)/tao/corba.h \
$(TAO_ROOT)/tao/Any.h \
@@ -5603,10 +5610,9 @@ ORBSVCS_COMPONENTS:
$(ACE_ROOT)/ace/SOCK_Connector.i \
$(ACE_ROOT)/ace/SOCK_Dgram.h \
$(ACE_ROOT)/ace/SOCK_Dgram.i \
- AV/Transport.i AV/FlowSpec_Entry.i \
+ AV/Transport.i AV/FlowSpec_Entry.i AV/UDP.i AV/AVStreams_i.h \
$(ACE_ROOT)/ace/SOCK_Dgram_Mcast.h \
$(ACE_ROOT)/ace/SOCK_Dgram_Mcast.i \
- AV/MCast.i AV/Nil.h AV/Policy.h AV/Policy.i AV/AVStreams_i.h \
$(ACE_ROOT)/ace/ATM_Addr.h \
$(ACE_ROOT)/ace/ATM_Addr.i \
$(ACE_ROOT)/ace/Process.h \
@@ -5637,8 +5643,8 @@ ORBSVCS_COMPONENTS:
$(TAO_ROOT)/orbsvcs/orbsvcs/Null_MediaCtrlS_T.i \
$(TAO_ROOT)/orbsvcs/orbsvcs/Null_MediaCtrlS_T.cpp \
$(TAO_ROOT)/orbsvcs/orbsvcs/Null_MediaCtrlS.i \
- AV/AVStreams_i.i
-.obj/RTP.o .obj/RTP.so .shobj/RTP.o .shobj/RTP.so: AV/RTP.cpp AV/RTP.h AV/Policy.h \
+ AV/AVStreams_i.i AV/MCast.h AV/MCast.i
+.obj/Policy.o .obj/Policy.so .shobj/Policy.o .shobj/Policy.so: AV/Policy.cpp AV/Policy.h \
$(TAO_ROOT)/tao/TAO.h \
$(TAO_ROOT)/tao/corbafwd.h \
$(ACE_ROOT)/ace/CDR_Stream.h \
@@ -5771,6 +5777,140 @@ ORBSVCS_COMPONENTS:
$(TAO_ROOT)/tao/ORB.i \
$(TAO_ROOT)/tao/debug.h \
$(TAO_ROOT)/orbsvcs/orbsvcs/orbsvcs_export.h \
+ AV/Policy.i
+.obj/Protocol_Factory.o .obj/Protocol_Factory.so .shobj/Protocol_Factory.o .shobj/Protocol_Factory.so: AV/Protocol_Factory.cpp AV/Protocol_Factory.h \
+ $(ACE_ROOT)/ace/Service_Object.h \
+ $(ACE_ROOT)/ace/Shared_Object.h \
+ $(ACE_ROOT)/ace/ACE.h \
+ $(ACE_ROOT)/ace/OS.h \
+ $(ACE_ROOT)/ace/inc_user_config.h \
+ $(ACE_ROOT)/ace/config-sunos5.6.h \
+ $(ACE_ROOT)/ace/config-sunos5.5.h \
+ $(ACE_ROOT)/ace/streams.h \
+ $(ACE_ROOT)/ace/Basic_Types.h \
+ $(ACE_ROOT)/ace/Basic_Types.i \
+ $(ACE_ROOT)/ace/Trace.h \
+ $(ACE_ROOT)/ace/OS.i \
+ $(ACE_ROOT)/ace/Log_Msg.h \
+ $(ACE_ROOT)/ace/Log_Record.h \
+ $(ACE_ROOT)/ace/ACE.i \
+ $(ACE_ROOT)/ace/Log_Priority.h \
+ $(ACE_ROOT)/ace/Log_Record.i \
+ $(ACE_ROOT)/ace/Shared_Object.i \
+ $(ACE_ROOT)/ace/Event_Handler.h \
+ $(ACE_ROOT)/ace/Event_Handler.i \
+ $(ACE_ROOT)/ace/Service_Object.i \
+ AV/Policy.h $(TAO_ROOT)/tao/TAO.h \
+ $(TAO_ROOT)/tao/corbafwd.h \
+ $(ACE_ROOT)/ace/CDR_Stream.h \
+ $(ACE_ROOT)/ace/Message_Block.h \
+ $(ACE_ROOT)/ace/Malloc.h \
+ $(ACE_ROOT)/ace/Malloc_Base.h \
+ $(ACE_ROOT)/ace/Malloc.i \
+ $(ACE_ROOT)/ace/Malloc_T.h \
+ $(ACE_ROOT)/ace/Synch.h \
+ $(ACE_ROOT)/ace/SV_Semaphore_Complex.h \
+ $(ACE_ROOT)/ace/SV_Semaphore_Simple.h \
+ $(ACE_ROOT)/ace/SV_Semaphore_Simple.i \
+ $(ACE_ROOT)/ace/SV_Semaphore_Complex.i \
+ $(ACE_ROOT)/ace/Synch.i \
+ $(ACE_ROOT)/ace/Synch_T.h \
+ $(ACE_ROOT)/ace/Synch_T.i \
+ $(ACE_ROOT)/ace/Thread.h \
+ $(ACE_ROOT)/ace/Thread.i \
+ $(ACE_ROOT)/ace/Atomic_Op.i \
+ $(ACE_ROOT)/ace/Synch_T.cpp \
+ $(ACE_ROOT)/ace/Free_List.h \
+ $(ACE_ROOT)/ace/Free_List.i \
+ $(ACE_ROOT)/ace/Free_List.cpp \
+ $(ACE_ROOT)/ace/Malloc_T.i \
+ $(ACE_ROOT)/ace/Malloc_T.cpp \
+ $(ACE_ROOT)/ace/Memory_Pool.h \
+ $(ACE_ROOT)/ace/Signal.h \
+ $(ACE_ROOT)/ace/Containers.h \
+ $(ACE_ROOT)/ace/Containers.i \
+ $(ACE_ROOT)/ace/Containers_T.h \
+ $(ACE_ROOT)/ace/Containers_T.i \
+ $(ACE_ROOT)/ace/Containers_T.cpp \
+ $(ACE_ROOT)/ace/Signal.i \
+ $(ACE_ROOT)/ace/Object_Manager.h \
+ $(ACE_ROOT)/ace/Object_Manager.i \
+ $(ACE_ROOT)/ace/Managed_Object.h \
+ $(ACE_ROOT)/ace/Managed_Object.i \
+ $(ACE_ROOT)/ace/Managed_Object.cpp \
+ $(ACE_ROOT)/ace/Mem_Map.h \
+ $(ACE_ROOT)/ace/Mem_Map.i \
+ $(ACE_ROOT)/ace/Memory_Pool.i \
+ $(ACE_ROOT)/ace/Message_Block.i \
+ $(ACE_ROOT)/ace/Message_Block_T.h \
+ $(ACE_ROOT)/ace/Message_Block_T.i \
+ $(ACE_ROOT)/ace/Message_Block_T.cpp \
+ $(ACE_ROOT)/ace/SString.h \
+ $(ACE_ROOT)/ace/SString.i \
+ $(ACE_ROOT)/ace/CDR_Stream.i \
+ $(TAO_ROOT)/tao/try_macros.h \
+ $(TAO_ROOT)/tao/orbconf.h \
+ $(ACE_ROOT)/ace/CORBA_macros.h \
+ $(TAO_ROOT)/tao/corbafwd.i \
+ $(TAO_ROOT)/tao/POAC.h \
+ $(TAO_ROOT)/tao/PolicyC.h \
+ $(TAO_ROOT)/tao/CurrentC.h \
+ $(TAO_ROOT)/tao/Object.h \
+ $(TAO_ROOT)/tao/Object.i \
+ $(TAO_ROOT)/tao/CurrentC.i \
+ $(TAO_ROOT)/tao/CDR.h \
+ $(TAO_ROOT)/tao/Typecode.h \
+ $(TAO_ROOT)/tao/Exception.h \
+ $(TAO_ROOT)/tao/Exception.i \
+ $(TAO_ROOT)/tao/Typecode.i \
+ $(TAO_ROOT)/tao/CDR.i \
+ $(TAO_ROOT)/tao/Sequence.h \
+ $(TAO_ROOT)/tao/Managed_Types.h \
+ $(TAO_ROOT)/tao/Managed_Types.i \
+ $(TAO_ROOT)/tao/Sequence.i \
+ $(TAO_ROOT)/tao/Sequence_T.h \
+ $(TAO_ROOT)/tao/Sequence_T.i \
+ $(TAO_ROOT)/tao/Sequence_T.cpp \
+ $(TAO_ROOT)/tao/PolicyC.i \
+ $(TAO_ROOT)/tao/Environment.h \
+ $(TAO_ROOT)/tao/Environment.i \
+ $(TAO_ROOT)/tao/POAC.i \
+ $(TAO_ROOT)/tao/ORB.h \
+ $(TAO_ROOT)/tao/IOR_LookupTable.h \
+ $(ACE_ROOT)/ace/Hash_Map_Manager.h \
+ $(ACE_ROOT)/ace/Functor.h \
+ $(ACE_ROOT)/ace/Functor.i \
+ $(ACE_ROOT)/ace/Functor_T.h \
+ $(ACE_ROOT)/ace/Functor_T.i \
+ $(ACE_ROOT)/ace/Functor_T.cpp \
+ $(ACE_ROOT)/ace/Hash_Map_Manager.i \
+ $(ACE_ROOT)/ace/Hash_Map_Manager_T.h \
+ $(ACE_ROOT)/ace/Hash_Map_Manager_T.i \
+ $(ACE_ROOT)/ace/Hash_Map_Manager_T.cpp \
+ $(ACE_ROOT)/ace/Service_Config.h \
+ $(ACE_ROOT)/ace/Service_Config.i \
+ $(ACE_ROOT)/ace/Reactor.h \
+ $(ACE_ROOT)/ace/Handle_Set.h \
+ $(ACE_ROOT)/ace/Handle_Set.i \
+ $(ACE_ROOT)/ace/Timer_Queue.h \
+ $(ACE_ROOT)/ace/Timer_Queue_T.h \
+ $(ACE_ROOT)/ace/Timer_Queue_T.i \
+ $(ACE_ROOT)/ace/Timer_Queue_T.cpp \
+ $(ACE_ROOT)/ace/Reactor.i \
+ $(ACE_ROOT)/ace/Reactor_Impl.h \
+ $(ACE_ROOT)/ace/Svc_Conf_Tokens.h \
+ $(TAO_ROOT)/tao/Services.h \
+ $(TAO_ROOT)/tao/Services.i \
+ $(TAO_ROOT)/tao/IORManipulation.h \
+ $(TAO_ROOT)/tao/IORS.h \
+ $(TAO_ROOT)/tao/IORC.h \
+ $(TAO_ROOT)/tao/IORC.i \
+ $(TAO_ROOT)/tao/Servant_Base.h \
+ $(TAO_ROOT)/tao/Servant_Base.i \
+ $(TAO_ROOT)/tao/IORS.i \
+ $(TAO_ROOT)/tao/ORB.i \
+ $(TAO_ROOT)/tao/debug.h \
+ $(TAO_ROOT)/orbsvcs/orbsvcs/orbsvcs_export.h \
AV/Policy.i AV/FlowSpec_Entry.h AV/AV_Core.h \
$(TAO_ROOT)/orbsvcs/orbsvcs/AVStreamsC.h \
$(TAO_ROOT)/tao/corba.h \
@@ -5946,47 +6086,9 @@ ORBSVCS_COMPONENTS:
$(ACE_ROOT)/ace/SOCK_Connector.i \
$(ACE_ROOT)/ace/SOCK_Dgram.h \
$(ACE_ROOT)/ace/SOCK_Dgram.i \
- AV/Transport.i AV/FlowSpec_Entry.i AV/MCast.h \
- $(ACE_ROOT)/ace/SOCK_Dgram_Mcast.h \
- $(ACE_ROOT)/ace/SOCK_Dgram_Mcast.i \
- AV/MCast.i AV/RTCP.h AV/source.h AV/source.i AV/AVStreams_i.h \
- $(ACE_ROOT)/ace/ATM_Addr.h \
- $(ACE_ROOT)/ace/ATM_Addr.i \
- $(ACE_ROOT)/ace/Process.h \
- $(ACE_ROOT)/ace/Process.i \
- $(ACE_ROOT)/ace/SOCK_CODgram.h \
- $(ACE_ROOT)/ace/SOCK_CODgram.i \
- $(TAO_ROOT)/orbsvcs/orbsvcs/CosPropertyServiceS.h \
- $(TAO_ROOT)/orbsvcs/orbsvcs/CosPropertyServiceS_T.h \
- $(TAO_ROOT)/orbsvcs/orbsvcs/CosPropertyServiceS_T.i \
- $(TAO_ROOT)/orbsvcs/orbsvcs/CosPropertyServiceS_T.cpp \
- $(TAO_ROOT)/orbsvcs/orbsvcs/CosPropertyServiceS.i \
- $(TAO_ROOT)/orbsvcs/orbsvcs/AVStreamsS.h \
- $(TAO_ROOT)/orbsvcs/orbsvcs/AVStreamsS_T.h \
- $(TAO_ROOT)/orbsvcs/orbsvcs/AVStreamsS_T.i \
- $(TAO_ROOT)/orbsvcs/orbsvcs/AVStreamsS_T.cpp \
- $(TAO_ROOT)/orbsvcs/orbsvcs/AVStreamsS.i \
- $(TAO_ROOT)/orbsvcs/orbsvcs/Property/CosPropertyService_i.h \
- $(TAO_ROOT)/orbsvcs/orbsvcs/CosNamingC.h \
- $(TAO_ROOT)/orbsvcs/orbsvcs/CosNamingC.i \
- $(TAO_ROOT)/orbsvcs/orbsvcs/AV/Endpoint_Strategy.h \
- $(TAO_ROOT)/orbsvcs/orbsvcs/AV/AVStreams_i.h \
- $(TAO_ROOT)/orbsvcs/orbsvcs/AV/Endpoint_Strategy_T.h \
- $(TAO_ROOT)/orbsvcs/orbsvcs/AV/Endpoint_Strategy_T.cpp \
- $(TAO_ROOT)/orbsvcs/orbsvcs/Null_MediaCtrlS.h \
- $(TAO_ROOT)/orbsvcs/orbsvcs/Null_MediaCtrlC.h \
- $(TAO_ROOT)/orbsvcs/orbsvcs/Null_MediaCtrlC.i \
- $(TAO_ROOT)/orbsvcs/orbsvcs/Null_MediaCtrlS_T.h \
- $(TAO_ROOT)/orbsvcs/orbsvcs/Null_MediaCtrlS_T.i \
- $(TAO_ROOT)/orbsvcs/orbsvcs/Null_MediaCtrlS_T.cpp \
- $(TAO_ROOT)/orbsvcs/orbsvcs/Null_MediaCtrlS.i \
- AV/AVStreams_i.i AV/Nil.h
-.obj/Policy.o .obj/Policy.so .shobj/Policy.o .shobj/Policy.so: AV/Policy.cpp AV/Policy.h \
- $(TAO_ROOT)/tao/TAO.h \
- $(TAO_ROOT)/tao/corbafwd.h \
- $(ACE_ROOT)/ace/CDR_Stream.h \
- $(ACE_ROOT)/ace/Message_Block.h \
- $(ACE_ROOT)/ace/ACE.h \
+ AV/Transport.i AV/FlowSpec_Entry.i
+.obj/MCast.o .obj/MCast.so .shobj/MCast.o .shobj/MCast.so: AV/MCast.cpp AV/MCast.h AV/FlowSpec_Entry.h \
+ $(TAO_ROOT)/orbsvcs/orbsvcs/orbsvcs_export.h \
$(ACE_ROOT)/ace/OS.h \
$(ACE_ROOT)/ace/inc_user_config.h \
$(ACE_ROOT)/ace/config-sunos5.6.h \
@@ -5998,143 +6100,15 @@ ORBSVCS_COMPONENTS:
$(ACE_ROOT)/ace/OS.i \
$(ACE_ROOT)/ace/Log_Msg.h \
$(ACE_ROOT)/ace/Log_Record.h \
+ $(ACE_ROOT)/ace/ACE.h \
$(ACE_ROOT)/ace/ACE.i \
$(ACE_ROOT)/ace/Log_Priority.h \
$(ACE_ROOT)/ace/Log_Record.i \
- $(ACE_ROOT)/ace/Malloc.h \
- $(ACE_ROOT)/ace/Malloc_Base.h \
- $(ACE_ROOT)/ace/Malloc.i \
- $(ACE_ROOT)/ace/Malloc_T.h \
- $(ACE_ROOT)/ace/Synch.h \
- $(ACE_ROOT)/ace/SV_Semaphore_Complex.h \
- $(ACE_ROOT)/ace/SV_Semaphore_Simple.h \
- $(ACE_ROOT)/ace/SV_Semaphore_Simple.i \
- $(ACE_ROOT)/ace/SV_Semaphore_Complex.i \
- $(ACE_ROOT)/ace/Synch.i \
- $(ACE_ROOT)/ace/Synch_T.h \
- $(ACE_ROOT)/ace/Event_Handler.h \
- $(ACE_ROOT)/ace/Event_Handler.i \
- $(ACE_ROOT)/ace/Synch_T.i \
- $(ACE_ROOT)/ace/Thread.h \
- $(ACE_ROOT)/ace/Thread.i \
- $(ACE_ROOT)/ace/Atomic_Op.i \
- $(ACE_ROOT)/ace/Synch_T.cpp \
- $(ACE_ROOT)/ace/Free_List.h \
- $(ACE_ROOT)/ace/Free_List.i \
- $(ACE_ROOT)/ace/Free_List.cpp \
- $(ACE_ROOT)/ace/Malloc_T.i \
- $(ACE_ROOT)/ace/Malloc_T.cpp \
- $(ACE_ROOT)/ace/Memory_Pool.h \
- $(ACE_ROOT)/ace/Signal.h \
- $(ACE_ROOT)/ace/Containers.h \
- $(ACE_ROOT)/ace/Containers.i \
- $(ACE_ROOT)/ace/Containers_T.h \
- $(ACE_ROOT)/ace/Containers_T.i \
- $(ACE_ROOT)/ace/Containers_T.cpp \
- $(ACE_ROOT)/ace/Signal.i \
- $(ACE_ROOT)/ace/Object_Manager.h \
- $(ACE_ROOT)/ace/Object_Manager.i \
- $(ACE_ROOT)/ace/Managed_Object.h \
- $(ACE_ROOT)/ace/Managed_Object.i \
- $(ACE_ROOT)/ace/Managed_Object.cpp \
- $(ACE_ROOT)/ace/Mem_Map.h \
- $(ACE_ROOT)/ace/Mem_Map.i \
- $(ACE_ROOT)/ace/Memory_Pool.i \
- $(ACE_ROOT)/ace/Message_Block.i \
- $(ACE_ROOT)/ace/Message_Block_T.h \
- $(ACE_ROOT)/ace/Message_Block_T.i \
- $(ACE_ROOT)/ace/Message_Block_T.cpp \
- $(ACE_ROOT)/ace/SString.h \
- $(ACE_ROOT)/ace/SString.i \
- $(ACE_ROOT)/ace/CDR_Stream.i \
- $(TAO_ROOT)/tao/try_macros.h \
- $(TAO_ROOT)/tao/orbconf.h \
- $(ACE_ROOT)/ace/CORBA_macros.h \
- $(TAO_ROOT)/tao/corbafwd.i \
- $(TAO_ROOT)/tao/POAC.h \
- $(TAO_ROOT)/tao/PolicyC.h \
- $(TAO_ROOT)/tao/CurrentC.h \
- $(TAO_ROOT)/tao/Object.h \
- $(TAO_ROOT)/tao/Object.i \
- $(TAO_ROOT)/tao/CurrentC.i \
- $(TAO_ROOT)/tao/CDR.h \
- $(TAO_ROOT)/tao/Typecode.h \
- $(TAO_ROOT)/tao/Exception.h \
- $(TAO_ROOT)/tao/Exception.i \
- $(TAO_ROOT)/tao/Typecode.i \
- $(TAO_ROOT)/tao/CDR.i \
- $(TAO_ROOT)/tao/Sequence.h \
- $(TAO_ROOT)/tao/Managed_Types.h \
- $(TAO_ROOT)/tao/Managed_Types.i \
- $(TAO_ROOT)/tao/Sequence.i \
- $(TAO_ROOT)/tao/Sequence_T.h \
- $(TAO_ROOT)/tao/Sequence_T.i \
- $(TAO_ROOT)/tao/Sequence_T.cpp \
- $(TAO_ROOT)/tao/PolicyC.i \
- $(TAO_ROOT)/tao/Environment.h \
- $(TAO_ROOT)/tao/Environment.i \
- $(TAO_ROOT)/tao/POAC.i \
- $(TAO_ROOT)/tao/ORB.h \
- $(TAO_ROOT)/tao/IOR_LookupTable.h \
- $(ACE_ROOT)/ace/Hash_Map_Manager.h \
- $(ACE_ROOT)/ace/Functor.h \
- $(ACE_ROOT)/ace/Functor.i \
- $(ACE_ROOT)/ace/Functor_T.h \
- $(ACE_ROOT)/ace/Functor_T.i \
- $(ACE_ROOT)/ace/Functor_T.cpp \
- $(ACE_ROOT)/ace/Hash_Map_Manager.i \
- $(ACE_ROOT)/ace/Hash_Map_Manager_T.h \
- $(ACE_ROOT)/ace/Hash_Map_Manager_T.i \
- $(ACE_ROOT)/ace/Hash_Map_Manager_T.cpp \
- $(ACE_ROOT)/ace/Service_Config.h \
- $(ACE_ROOT)/ace/Service_Object.h \
- $(ACE_ROOT)/ace/Shared_Object.h \
- $(ACE_ROOT)/ace/Shared_Object.i \
- $(ACE_ROOT)/ace/Service_Object.i \
- $(ACE_ROOT)/ace/Service_Config.i \
- $(ACE_ROOT)/ace/Reactor.h \
- $(ACE_ROOT)/ace/Handle_Set.h \
- $(ACE_ROOT)/ace/Handle_Set.i \
- $(ACE_ROOT)/ace/Timer_Queue.h \
- $(ACE_ROOT)/ace/Timer_Queue_T.h \
- $(ACE_ROOT)/ace/Timer_Queue_T.i \
- $(ACE_ROOT)/ace/Timer_Queue_T.cpp \
- $(ACE_ROOT)/ace/Reactor.i \
- $(ACE_ROOT)/ace/Reactor_Impl.h \
- $(ACE_ROOT)/ace/Svc_Conf_Tokens.h \
- $(TAO_ROOT)/tao/Services.h \
- $(TAO_ROOT)/tao/Services.i \
- $(TAO_ROOT)/tao/IORManipulation.h \
- $(TAO_ROOT)/tao/IORS.h \
- $(TAO_ROOT)/tao/IORC.h \
- $(TAO_ROOT)/tao/IORC.i \
- $(TAO_ROOT)/tao/Servant_Base.h \
- $(TAO_ROOT)/tao/Servant_Base.i \
- $(TAO_ROOT)/tao/IORS.i \
- $(TAO_ROOT)/tao/ORB.i \
- $(TAO_ROOT)/tao/debug.h \
- $(TAO_ROOT)/orbsvcs/orbsvcs/orbsvcs_export.h \
- AV/Policy.i
-.obj/Nil.o .obj/Nil.so .shobj/Nil.o .shobj/Nil.so: AV/Nil.cpp AV/Nil.h AV/Policy.h \
+ AV/AV_Core.h \
$(TAO_ROOT)/tao/TAO.h \
$(TAO_ROOT)/tao/corbafwd.h \
$(ACE_ROOT)/ace/CDR_Stream.h \
$(ACE_ROOT)/ace/Message_Block.h \
- $(ACE_ROOT)/ace/ACE.h \
- $(ACE_ROOT)/ace/OS.h \
- $(ACE_ROOT)/ace/inc_user_config.h \
- $(ACE_ROOT)/ace/config-sunos5.6.h \
- $(ACE_ROOT)/ace/config-sunos5.5.h \
- $(ACE_ROOT)/ace/streams.h \
- $(ACE_ROOT)/ace/Basic_Types.h \
- $(ACE_ROOT)/ace/Basic_Types.i \
- $(ACE_ROOT)/ace/Trace.h \
- $(ACE_ROOT)/ace/OS.i \
- $(ACE_ROOT)/ace/Log_Msg.h \
- $(ACE_ROOT)/ace/Log_Record.h \
- $(ACE_ROOT)/ace/ACE.i \
- $(ACE_ROOT)/ace/Log_Priority.h \
- $(ACE_ROOT)/ace/Log_Record.i \
$(ACE_ROOT)/ace/Malloc.h \
$(ACE_ROOT)/ace/Malloc_Base.h \
$(ACE_ROOT)/ace/Malloc.i \
@@ -6246,9 +6220,6 @@ ORBSVCS_COMPONENTS:
$(TAO_ROOT)/tao/Servant_Base.i \
$(TAO_ROOT)/tao/IORS.i \
$(TAO_ROOT)/tao/ORB.i \
- $(TAO_ROOT)/tao/debug.h \
- $(TAO_ROOT)/orbsvcs/orbsvcs/orbsvcs_export.h \
- AV/Policy.i AV/FlowSpec_Entry.h AV/AV_Core.h \
$(TAO_ROOT)/orbsvcs/orbsvcs/AVStreamsC.h \
$(TAO_ROOT)/tao/corba.h \
$(TAO_ROOT)/tao/Any.h \
@@ -6423,13 +6394,43 @@ ORBSVCS_COMPONENTS:
$(ACE_ROOT)/ace/SOCK_Connector.i \
$(ACE_ROOT)/ace/SOCK_Dgram.h \
$(ACE_ROOT)/ace/SOCK_Dgram.i \
- AV/Transport.i AV/FlowSpec_Entry.i
-.obj/RTCP.o .obj/RTCP.so .shobj/RTCP.o .shobj/RTCP.so: AV/RTCP.cpp AV/RTP.h AV/Policy.h \
- $(TAO_ROOT)/tao/TAO.h \
- $(TAO_ROOT)/tao/corbafwd.h \
- $(ACE_ROOT)/ace/CDR_Stream.h \
- $(ACE_ROOT)/ace/Message_Block.h \
- $(ACE_ROOT)/ace/ACE.h \
+ AV/Transport.i AV/FlowSpec_Entry.i AV/Protocol_Factory.h AV/Policy.h \
+ AV/Policy.i \
+ $(ACE_ROOT)/ace/SOCK_Dgram_Mcast.h \
+ $(ACE_ROOT)/ace/SOCK_Dgram_Mcast.i \
+ AV/MCast.i AV/Nil.h AV/AVStreams_i.h \
+ $(ACE_ROOT)/ace/ATM_Addr.h \
+ $(ACE_ROOT)/ace/ATM_Addr.i \
+ $(ACE_ROOT)/ace/Process.h \
+ $(ACE_ROOT)/ace/Process.i \
+ $(ACE_ROOT)/ace/SOCK_CODgram.h \
+ $(ACE_ROOT)/ace/SOCK_CODgram.i \
+ $(TAO_ROOT)/orbsvcs/orbsvcs/CosPropertyServiceS.h \
+ $(TAO_ROOT)/orbsvcs/orbsvcs/CosPropertyServiceS_T.h \
+ $(TAO_ROOT)/orbsvcs/orbsvcs/CosPropertyServiceS_T.i \
+ $(TAO_ROOT)/orbsvcs/orbsvcs/CosPropertyServiceS_T.cpp \
+ $(TAO_ROOT)/orbsvcs/orbsvcs/CosPropertyServiceS.i \
+ $(TAO_ROOT)/orbsvcs/orbsvcs/AVStreamsS.h \
+ $(TAO_ROOT)/orbsvcs/orbsvcs/AVStreamsS_T.h \
+ $(TAO_ROOT)/orbsvcs/orbsvcs/AVStreamsS_T.i \
+ $(TAO_ROOT)/orbsvcs/orbsvcs/AVStreamsS_T.cpp \
+ $(TAO_ROOT)/orbsvcs/orbsvcs/AVStreamsS.i \
+ $(TAO_ROOT)/orbsvcs/orbsvcs/Property/CosPropertyService_i.h \
+ $(TAO_ROOT)/orbsvcs/orbsvcs/CosNamingC.h \
+ $(TAO_ROOT)/orbsvcs/orbsvcs/CosNamingC.i \
+ $(TAO_ROOT)/orbsvcs/orbsvcs/AV/Endpoint_Strategy.h \
+ $(TAO_ROOT)/orbsvcs/orbsvcs/AV/AVStreams_i.h \
+ $(TAO_ROOT)/orbsvcs/orbsvcs/AV/Endpoint_Strategy_T.h \
+ $(TAO_ROOT)/orbsvcs/orbsvcs/AV/Endpoint_Strategy_T.cpp \
+ $(TAO_ROOT)/orbsvcs/orbsvcs/Null_MediaCtrlS.h \
+ $(TAO_ROOT)/orbsvcs/orbsvcs/Null_MediaCtrlC.h \
+ $(TAO_ROOT)/orbsvcs/orbsvcs/Null_MediaCtrlC.i \
+ $(TAO_ROOT)/orbsvcs/orbsvcs/Null_MediaCtrlS_T.h \
+ $(TAO_ROOT)/orbsvcs/orbsvcs/Null_MediaCtrlS_T.i \
+ $(TAO_ROOT)/orbsvcs/orbsvcs/Null_MediaCtrlS_T.cpp \
+ $(TAO_ROOT)/orbsvcs/orbsvcs/Null_MediaCtrlS.i \
+ AV/AVStreams_i.i
+.obj/source.o .obj/source.so .shobj/source.o .shobj/source.so: AV/source.cpp \
$(ACE_ROOT)/ace/OS.h \
$(ACE_ROOT)/ace/inc_user_config.h \
$(ACE_ROOT)/ace/config-sunos5.6.h \
@@ -6441,9 +6442,21 @@ ORBSVCS_COMPONENTS:
$(ACE_ROOT)/ace/OS.i \
$(ACE_ROOT)/ace/Log_Msg.h \
$(ACE_ROOT)/ace/Log_Record.h \
+ $(ACE_ROOT)/ace/ACE.h \
$(ACE_ROOT)/ace/ACE.i \
$(ACE_ROOT)/ace/Log_Priority.h \
- $(ACE_ROOT)/ace/Log_Record.i \
+ $(ACE_ROOT)/ace/Log_Record.i AV/RTP.h \
+ AV/Protocol_Factory.h \
+ $(ACE_ROOT)/ace/Service_Object.h \
+ $(ACE_ROOT)/ace/Shared_Object.h \
+ $(ACE_ROOT)/ace/Shared_Object.i \
+ $(ACE_ROOT)/ace/Event_Handler.h \
+ $(ACE_ROOT)/ace/Event_Handler.i \
+ $(ACE_ROOT)/ace/Service_Object.i \
+ AV/Policy.h $(TAO_ROOT)/tao/TAO.h \
+ $(TAO_ROOT)/tao/corbafwd.h \
+ $(ACE_ROOT)/ace/CDR_Stream.h \
+ $(ACE_ROOT)/ace/Message_Block.h \
$(ACE_ROOT)/ace/Malloc.h \
$(ACE_ROOT)/ace/Malloc_Base.h \
$(ACE_ROOT)/ace/Malloc.i \
@@ -6455,8 +6468,6 @@ ORBSVCS_COMPONENTS:
$(ACE_ROOT)/ace/SV_Semaphore_Complex.i \
$(ACE_ROOT)/ace/Synch.i \
$(ACE_ROOT)/ace/Synch_T.h \
- $(ACE_ROOT)/ace/Event_Handler.h \
- $(ACE_ROOT)/ace/Event_Handler.i \
$(ACE_ROOT)/ace/Synch_T.i \
$(ACE_ROOT)/ace/Thread.h \
$(ACE_ROOT)/ace/Thread.i \
@@ -6530,10 +6541,6 @@ ORBSVCS_COMPONENTS:
$(ACE_ROOT)/ace/Hash_Map_Manager_T.i \
$(ACE_ROOT)/ace/Hash_Map_Manager_T.cpp \
$(ACE_ROOT)/ace/Service_Config.h \
- $(ACE_ROOT)/ace/Service_Object.h \
- $(ACE_ROOT)/ace/Shared_Object.h \
- $(ACE_ROOT)/ace/Shared_Object.i \
- $(ACE_ROOT)/ace/Service_Object.i \
$(ACE_ROOT)/ace/Service_Config.i \
$(ACE_ROOT)/ace/Reactor.h \
$(ACE_ROOT)/ace/Handle_Set.h \
@@ -6766,8 +6773,8 @@ ORBSVCS_COMPONENTS:
$(TAO_ROOT)/orbsvcs/orbsvcs/Null_MediaCtrlS_T.i \
$(TAO_ROOT)/orbsvcs/orbsvcs/Null_MediaCtrlS_T.cpp \
$(TAO_ROOT)/orbsvcs/orbsvcs/Null_MediaCtrlS.i \
- AV/AVStreams_i.i AV/media-timer.h AV/ntp-time.h
-.obj/source.o .obj/source.so .shobj/source.o .shobj/source.so: AV/source.cpp \
+ AV/AVStreams_i.i AV/UDP.h AV/UDP.i
+.obj/media-timer.o .obj/media-timer.so .shobj/media-timer.o .shobj/media-timer.so: AV/media-timer.cpp AV/media-timer.h \
$(ACE_ROOT)/ace/OS.h \
$(ACE_ROOT)/ace/inc_user_config.h \
$(ACE_ROOT)/ace/config-sunos5.6.h \
@@ -6782,7 +6789,29 @@ ORBSVCS_COMPONENTS:
$(ACE_ROOT)/ace/ACE.h \
$(ACE_ROOT)/ace/ACE.i \
$(ACE_ROOT)/ace/Log_Priority.h \
- $(ACE_ROOT)/ace/Log_Record.i AV/RTP.h \
+ $(ACE_ROOT)/ace/Log_Record.i
+.obj/RTCP.o .obj/RTCP.so .shobj/RTCP.o .shobj/RTCP.so: AV/RTCP.cpp AV/RTP.h AV/Protocol_Factory.h \
+ $(ACE_ROOT)/ace/Service_Object.h \
+ $(ACE_ROOT)/ace/Shared_Object.h \
+ $(ACE_ROOT)/ace/ACE.h \
+ $(ACE_ROOT)/ace/OS.h \
+ $(ACE_ROOT)/ace/inc_user_config.h \
+ $(ACE_ROOT)/ace/config-sunos5.6.h \
+ $(ACE_ROOT)/ace/config-sunos5.5.h \
+ $(ACE_ROOT)/ace/streams.h \
+ $(ACE_ROOT)/ace/Basic_Types.h \
+ $(ACE_ROOT)/ace/Basic_Types.i \
+ $(ACE_ROOT)/ace/Trace.h \
+ $(ACE_ROOT)/ace/OS.i \
+ $(ACE_ROOT)/ace/Log_Msg.h \
+ $(ACE_ROOT)/ace/Log_Record.h \
+ $(ACE_ROOT)/ace/ACE.i \
+ $(ACE_ROOT)/ace/Log_Priority.h \
+ $(ACE_ROOT)/ace/Log_Record.i \
+ $(ACE_ROOT)/ace/Shared_Object.i \
+ $(ACE_ROOT)/ace/Event_Handler.h \
+ $(ACE_ROOT)/ace/Event_Handler.i \
+ $(ACE_ROOT)/ace/Service_Object.i \
AV/Policy.h $(TAO_ROOT)/tao/TAO.h \
$(TAO_ROOT)/tao/corbafwd.h \
$(ACE_ROOT)/ace/CDR_Stream.h \
@@ -6798,8 +6827,6 @@ ORBSVCS_COMPONENTS:
$(ACE_ROOT)/ace/SV_Semaphore_Complex.i \
$(ACE_ROOT)/ace/Synch.i \
$(ACE_ROOT)/ace/Synch_T.h \
- $(ACE_ROOT)/ace/Event_Handler.h \
- $(ACE_ROOT)/ace/Event_Handler.i \
$(ACE_ROOT)/ace/Synch_T.i \
$(ACE_ROOT)/ace/Thread.h \
$(ACE_ROOT)/ace/Thread.i \
@@ -6873,10 +6900,6 @@ ORBSVCS_COMPONENTS:
$(ACE_ROOT)/ace/Hash_Map_Manager_T.i \
$(ACE_ROOT)/ace/Hash_Map_Manager_T.cpp \
$(ACE_ROOT)/ace/Service_Config.h \
- $(ACE_ROOT)/ace/Service_Object.h \
- $(ACE_ROOT)/ace/Shared_Object.h \
- $(ACE_ROOT)/ace/Shared_Object.i \
- $(ACE_ROOT)/ace/Service_Object.i \
$(ACE_ROOT)/ace/Service_Config.i \
$(ACE_ROOT)/ace/Reactor.h \
$(ACE_ROOT)/ace/Handle_Set.h \
@@ -7109,23 +7132,7 @@ ORBSVCS_COMPONENTS:
$(TAO_ROOT)/orbsvcs/orbsvcs/Null_MediaCtrlS_T.i \
$(TAO_ROOT)/orbsvcs/orbsvcs/Null_MediaCtrlS_T.cpp \
$(TAO_ROOT)/orbsvcs/orbsvcs/Null_MediaCtrlS.i \
- AV/AVStreams_i.i
-.obj/media-timer.o .obj/media-timer.so .shobj/media-timer.o .shobj/media-timer.so: AV/media-timer.cpp AV/media-timer.h \
- $(ACE_ROOT)/ace/OS.h \
- $(ACE_ROOT)/ace/inc_user_config.h \
- $(ACE_ROOT)/ace/config-sunos5.6.h \
- $(ACE_ROOT)/ace/config-sunos5.5.h \
- $(ACE_ROOT)/ace/streams.h \
- $(ACE_ROOT)/ace/Basic_Types.h \
- $(ACE_ROOT)/ace/Basic_Types.i \
- $(ACE_ROOT)/ace/Trace.h \
- $(ACE_ROOT)/ace/OS.i \
- $(ACE_ROOT)/ace/Log_Msg.h \
- $(ACE_ROOT)/ace/Log_Record.h \
- $(ACE_ROOT)/ace/ACE.h \
- $(ACE_ROOT)/ace/ACE.i \
- $(ACE_ROOT)/ace/Log_Priority.h \
- $(ACE_ROOT)/ace/Log_Record.i
+ AV/AVStreams_i.i AV/UDP.h AV/UDP.i AV/media-timer.h AV/ntp-time.h
.obj/CosPropertyService_i.o .obj/CosPropertyService_i.so .shobj/CosPropertyService_i.o .shobj/CosPropertyService_i.so: Property/CosPropertyService_i.cpp \
$(TAO_ROOT)/orbsvcs/orbsvcs/Property/CosPropertyService_i.h \
$(ACE_ROOT)/ace/OS.h \
diff --git a/TAO/orbsvcs/tests/AVStreams/Full_Profile/ftp.cpp b/TAO/orbsvcs/tests/AVStreams/Full_Profile/ftp.cpp
index c39b903a38f..c3159e0b49d 100644
--- a/TAO/orbsvcs/tests/AVStreams/Full_Profile/ftp.cpp
+++ b/TAO/orbsvcs/tests/AVStreams/Full_Profile/ftp.cpp
@@ -2,81 +2,39 @@
#include "ftp.h"
-FTP_Client_Callback::FTP_Client_Callback (FTP_Client_Flow_Handler *handler)
- :handler_ (handler)
+FTP_Client_Callback::FTP_Client_Callback (void)
+ // :handler_ (handler),
+ :count_ (0)
{
}
int
-FTP_Client_Callback::handle_start (void)
+FTP_Client_Callback::handle_end_stream (void)
{
- ACE_DEBUG ((LM_DEBUG,"FTP_Client_Callback::handle_start"));
- return this->handler_->start ();
-}
-
-int
-FTP_Client_Callback::handle_stop (void)
-{
- ACE_DEBUG ((LM_DEBUG,"FTP_Client_Callback::handle_stop"));
- return this->handler_->stop ();
-}
-
-
-FTP_Client_Flow_Handler::FTP_Client_Flow_Handler (TAO_ORB_Manager *orb_manager,
- ACE_Time_Value &timeout)
- :TAO_FlowProducer ("Data",CLIENT::instance ()->protocols (),CLIENT::instance ()->format ()),
- orb_manager_ (orb_manager),
- count_ (0),
- timeout_ (timeout)
-{
-}
-
-int
-FTP_Client_Flow_Handler::get_callback (const char *flowname,
- TAO_AV_Callback *&callback)
-{
- ACE_DEBUG ((LM_DEBUG,"FTP_Client_Flow_Handler::get_callback\n"));
- ACE_NEW_RETURN (callback,
- FTP_Client_Callback (this),
- -1);
- return 0;
-}
-
-int
-FTP_Client_Flow_Handler::start (void)
-{
- ACE_DEBUG ((LM_DEBUG,"FTP_Client_Flow_Handler::start"));
- ACE_Time_Value delta = ACE_Time_Value::zero;
- this->timer_id_ =
- TAO_AV_CORE::instance ()->reactor ()->schedule_timer (this,
- 0,
- delta,
- this->timeout_);
+ TAO_AV_CORE::instance ()->stop_run ();
return 0;
}
-int
-FTP_Client_Flow_Handler::stop (void)
+void
+FTP_Client_Callback::get_timeout (ACE_Time_Value *&tv,
+ void *&arg)
{
- ACE_DEBUG ((LM_DEBUG,"FTP_Client_Flow_Handler::stop"));
- int result = TAO_AV_CORE::instance ()->reactor ()->cancel_timer (this->timer_id_);
- if (result < 0)
- ACE_ERROR_RETURN ((LM_ERROR,"FTP_Client_Flow_Handler::stop cancel timer failed\n"),-1);
- return 0;
+ ACE_Time_Value *timeout;
+ ACE_NEW (timeout,
+ ACE_Time_Value(2));
+ tv = timeout;
}
int
-FTP_Client_Flow_Handler::handle_timeout (const ACE_Time_Value &tv,
- const void *arg)
+FTP_Client_Callback::handle_timeout (void *arg)
{
- ACE_DEBUG ((LM_DEBUG,"FTP_Client_StreamEndPoint::handle_timeout"));
ACE_Message_Block mb (BUFSIZ);
+ ACE_DEBUG ((LM_DEBUG,"FTP_Client_Callback::get_frame"));
char *buf = mb.rd_ptr ();
cerr << "message block size" << mb.size () << endl;
int n = ACE_OS::fread(buf,1,mb.size (),CLIENT::instance ()->file ());
if (n < 0)
{
- TAO_AV_CORE::instance ()->reactor ()->cancel_timer (this->timer_id_);
ACE_ERROR_RETURN ((LM_ERROR,"FTP_Client_Flow_Handler::fread end of file\n"),-1);
}
if (n == 0)
@@ -87,14 +45,13 @@ FTP_Client_Flow_Handler::handle_timeout (const ACE_Time_Value &tv,
this->count_++;
if (this->count_ == 2)
{
- ACE_DECLARE_NEW_CORBA_ENV;
ACE_DEBUG ((LM_DEBUG,"handle_timeout:End of file\n"));
AVStreams::flowSpec stop_spec (1);
+ ACE_DECLARE_NEW_CORBA_ENV;
CLIENT::instance ()->streamctrl ()->stop (stop_spec,ACE_TRY_ENV);
ACE_CHECK_RETURN (-1);
CLIENT::instance ()->streamctrl ()->destroy (stop_spec,ACE_TRY_ENV);
TAO_AV_CORE::instance ()->stop_run ();
- return 0;
}
else
return 0;
@@ -108,35 +65,30 @@ FTP_Client_Flow_Handler::handle_timeout (const ACE_Time_Value &tv,
if (result < 0)
ACE_ERROR_RETURN ((LM_ERROR,"send failed:%p","FTP_Client_Flow_Handler::send \n"),-1);
ACE_DEBUG ((LM_DEBUG,"handle_timeout::buffer sent succesfully\n"));
+ return 0;
}
-//------------------------------------------------------------
-// FTP_Client_FDev
-//------------------------------------------------------------
-
-FTP_Client_FDev::FTP_Client_FDev (TAO_ORB_Manager *orb_manager)
- :TAO_FDev (CORBA::string_dup ("Data")),
- orb_manager_ (orb_manager)
+FTP_Client_Producer::FTP_Client_Producer (void)
+ :TAO_FlowProducer ("Data",CLIENT::instance ()->protocols (),CLIENT::instance ()->format ())
+{
+}
+
+int
+FTP_Client_Producer::set_protocol_object (const char *flowname,
+ TAO_AV_Protocol_Object *object)
{
+ this->callback_->set_protocol_object (object);
+ return 0;
}
-AVStreams::FlowProducer_ptr
-FTP_Client_FDev::make_producer (AVStreams::FlowConnection_ptr the_requester,
- AVStreams::QoS & the_qos,
- CORBA::Boolean_out met_qos,
- char *& named_fdev,
- CORBA::Environment &ACE_TRY_ENV)
+int
+FTP_Client_Producer::get_callback (const char *flowname,
+ TAO_AV_Callback *&callback)
{
- ACE_DEBUG ((LM_DEBUG,"FTP_Client_FDev::make_producer\n"));
- FTP_Client_Flow_Handler *handler;
- ACE_Time_Value timeout (2);
- ACE_NEW_RETURN (handler,
- FTP_Client_Flow_Handler (this->orb_manager_,
- timeout),
- 0);
- AVStreams::FlowProducer_ptr producer = handler->_this (ACE_TRY_ENV);
- ACE_CHECK_RETURN (0);
- return producer;
+ ACE_NEW_RETURN (this->callback_,
+ FTP_Client_Callback,
+ -1);
+ callback = this->callback_;
}
Client::parse_args (int argc,
@@ -297,9 +249,15 @@ Client::init (int argc,char **argv)
this->orb_manager_->activate_poa_manager (ACE_TRY_ENV);
ACE_TRY_CHECK;
ACE_NEW_RETURN (this->fdev_,
- FTP_Client_FDev (this->orb_manager_),
+ FTP_Client_FDev,
-1);
-
+ ACE_NEW_RETURN (this->flowname_,
+ char [BUFSIZ],
+ 0);
+ ACE_OS::sprintf (this->flowname_,
+ "Data");
+
+ this->fdev_->flowname (this->flowname ());
AVStreams::MMDevice_var mmdevice = this->client_mmdevice_._this (ACE_TRY_ENV);
ACE_TRY_CHECK;
AVStreams::FDev_var fdev = this->fdev_->_this (ACE_TRY_ENV);
@@ -351,12 +309,6 @@ Client::run (void)
// Bind the client and server mmdevices.
ACE_INET_Addr addr (this->address_);
- ACE_NEW_RETURN (this->flowname_,
- char [BUFSIZ],
- 0);
- ACE_OS::sprintf (this->flowname_,
- "Data",
- this->protocol_);
TAO_Forward_FlowSpec_Entry entry (this->flowname_,
"IN",
"USER_DEFINED",
@@ -365,12 +317,18 @@ Client::run (void)
&addr);
flow_spec [0] = CORBA::string_dup (entry.entry_to_string ());
flow_spec.length (1);
+ ACE_High_Res_Timer timer;
+ ACE_Time_Value elapsed;
+ timer.start ();
CORBA::Boolean result =
this->streamctrl_.bind_devs (this->client_mmdevice_._this (ACE_TRY_ENV),
this->server_mmdevice_.in (),
the_qos.inout (),
flow_spec,
ACE_TRY_ENV);
+ timer.stop ();
+ timer.elapsed_time (elapsed);
+ elapsed.dump ();
ACE_TRY_CHECK;
if (result == 0)
ACE_ERROR_RETURN ((LM_ERROR,"streamctrl::bind_devs failed\n"),-1);
@@ -410,8 +368,10 @@ main (int argc,
template class ACE_Singleton <Client,ACE_Null_Mutex>;
template class TAO_AV_Endpoint_Reactive_Strategy_A<FTP_Client_StreamEndPoint,TAO_VDev,AV_Null_MediaCtrl>;
template class TAO_AV_Endpoint_Reactive_Strategy<FTP_Client_StreamEndPoint,TAO_VDev,AV_Null_MediaCtrl>;
+template class TAO_FDev <FTP_Client_Producer,TAO_FlowConsumer>;
#elif defined (ACE_HAS_TEMPLATE_INSTANTIATION_PRAGMA)
#pragma instantiate ACE_Singleton <Client,ACE_Null_Mutex>
#pragma instantiate TAO_AV_Endpoint_Reactive_Strategy_A<FTP_Client_StreamEndPoint,TAO_VDev,AV_Null_MediaCtrl>
#pragma instantiate TAO_AV_Endpoint_Reactive_Strategy<FTP_Client_StreamEndPoint,TAO_VDev,AV_Null_MediaCtrl>
+#pragma instantiate TAO_FDev <FTP_Client_Producer,TAO_FlowConsumer>
#endif /* ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION */
diff --git a/TAO/orbsvcs/tests/AVStreams/Full_Profile/ftp.h b/TAO/orbsvcs/tests/AVStreams/Full_Profile/ftp.h
index a82b1b30a08..177505890b7 100644
--- a/TAO/orbsvcs/tests/AVStreams/Full_Profile/ftp.h
+++ b/TAO/orbsvcs/tests/AVStreams/Full_Profile/ftp.h
@@ -8,57 +8,46 @@
#include "tao/TAO.h"
#include "orbsvcs/Naming/Naming_Utils.h"
#include "orbsvcs/AV/AVStreams_i.h"
+#include "orbsvcs/AV/Flows_T.h"
#include "orbsvcs/AV/Endpoint_Strategy.h"
#include "orbsvcs/AV/Transport.h"
#include "orbsvcs/AV/sfp.h"
#include "orbsvcs/AV/MCast.h"
-class FTP_Client_Flow_Handler
- :public virtual ACE_Event_Handler,
- public virtual TAO_FlowProducer
+class FTP_Client_Callback;
+class FTP_Client_Producer
+ :public virtual TAO_FlowProducer
{
public:
- FTP_Client_Flow_Handler (TAO_ORB_Manager *orb_manager,
- ACE_Time_Value &timeout);
- virtual int handle_timeout (const ACE_Time_Value &tv,
- const void *arg = 0);
- virtual int start (void);
- virtual int stop (void);
+ FTP_Client_Producer (void);
virtual int get_callback (const char *flowname,
TAO_AV_Callback *&callback);
+ int set_protocol_object (const char *flowname,
+ TAO_AV_Protocol_Object *object);
protected:
- TAO_ORB_Manager *orb_manager_;
- long timer_id_;
- int count_;
- ACE_Time_Value timeout_;
+ FTP_Client_Callback *callback_;
};
class FTP_Client_Callback
:public TAO_AV_Callback
{
public:
- FTP_Client_Callback (FTP_Client_Flow_Handler *handler);
- virtual int handle_start (void);
- virtual int handle_stop (void);
-protected:
- FTP_Client_Flow_Handler *handler_;
-};
+ FTP_Client_Callback (void);
+ virtual int handle_timeout (void *arg);
+ virtual int handle_end_stream (void);
+ virtual void get_timeout (ACE_Time_Value *&tv,
+ void *&arg);
+ // virtual int get_frame (ACE_Message_Block *&block,TAO_AV_frame_info *&frame_info);
+ void set_protocol_object (TAO_AV_Protocol_Object *protocol_object) {this->protocol_object_ = protocol_object;}
-class FTP_Client_FDev
- :public TAO_FDev
-{
-public:
- FTP_Client_FDev (TAO_ORB_Manager *orb_manger);
- virtual AVStreams::FlowProducer_ptr make_producer (AVStreams::FlowConnection_ptr the_requester,
- AVStreams::QoS & the_qos,
- CORBA::Boolean_out met_qos,
- char *& named_fdev,
- CORBA::Environment &env = CORBA::Environment::default_environment ());
protected:
- TAO_ORB_Manager *orb_manager_;
+ // FTP_Client_Flow_Handler *handler_;
+ int count_;
+ TAO_AV_Protocol_Object *protocol_object_;
};
typedef TAO_AV_Endpoint_Reactive_Strategy_A<TAO_StreamEndPoint_A,TAO_VDev,AV_Null_MediaCtrl> ENDPOINT_STRATEGY;
+typedef TAO_FDev <FTP_Client_Producer,TAO_FlowConsumer> FTP_Client_FDev;
class Client
{
diff --git a/TAO/orbsvcs/tests/AVStreams/Full_Profile/server.cpp b/TAO/orbsvcs/tests/AVStreams/Full_Profile/server.cpp
index aa80fd6923a..e29935c73ab 100644
--- a/TAO/orbsvcs/tests/AVStreams/Full_Profile/server.cpp
+++ b/TAO/orbsvcs/tests/AVStreams/Full_Profile/server.cpp
@@ -6,9 +6,10 @@ FTP_Server_FlowEndPoint::FTP_Server_FlowEndPoint (void)
:TAO_FlowConsumer ("Data",SERVER::instance ()->protocols (),SERVER::instance ()->format ())
{
AVStreams::protocolSpec protocols (2);
- protocols.length (2);
+ protocols.length (3);
protocols [0] = CORBA::string_dup ("TCP");
protocols [1] = CORBA::string_dup ("UDP");
+ protocols [2] = CORBA::string_dup ("RTP/UDP");
ACE_DECLARE_NEW_CORBA_ENV;
ACE_TRY
{
@@ -44,7 +45,8 @@ FTP_Server_Callback::handle_stop (void)
}
int
-FTP_Server_Callback::receive_frame (ACE_Message_Block *frame)
+FTP_Server_Callback::receive_frame (ACE_Message_Block *frame,
+ TAO_AV_frame_info *)
{
ACE_DEBUG ((LM_DEBUG,"FTP_Server_Callback::receive_frame\n"));
while (frame != 0)
@@ -69,26 +71,26 @@ FTP_Server_Callback::handle_end_stream (void)
return 0;
}
-FTP_Server_FDev::FTP_Server_FDev (void)
- :TAO_FDev ("Data")
-{
-}
+// FTP_Server_FDev::FTP_Server_FDev (void)
+// :TAO_FDev ("Data")
+// {
+// }
-AVStreams::FlowConsumer_ptr
-FTP_Server_FDev::make_consumer (AVStreams::FlowConnection_ptr the_requester,
- AVStreams::QoS & the_qos,
- CORBA::Boolean_out met_qos,
- char *& named_fdev,
- CORBA::Environment &ACE_TRY_ENV)
-{
- ACE_DEBUG ((LM_DEBUG,"FTP_Server_FDev::make_consumer"));
- FTP_Server_FlowEndPoint *endpoint;
- ACE_NEW_RETURN (endpoint,
- FTP_Server_FlowEndPoint,
- 0);
- return endpoint->_this (ACE_TRY_ENV);
- ACE_CHECK_RETURN (0);
-}
+// AVStreams::FlowConsumer_ptr
+// FTP_Server_FDev::make_consumer (AVStreams::FlowConnection_ptr the_requester,
+// AVStreams::QoS & the_qos,
+// CORBA::Boolean_out met_qos,
+// char *& named_fdev,
+// CORBA::Environment &ACE_TRY_ENV)
+// {
+// ACE_DEBUG ((LM_DEBUG,"FTP_Server_FDev::make_consumer"));
+// FTP_Server_FlowEndPoint *endpoint;
+// ACE_NEW_RETURN (endpoint,
+// FTP_Server_FlowEndPoint,
+// 0);
+// return endpoint->_this (ACE_TRY_ENV);
+// ACE_CHECK_RETURN (0);
+// }
Server::Server (void)
:orb_manager_ (TAO_AV_CORE::instance ()->orb_manager ()),
@@ -160,6 +162,8 @@ Server::init (int argc,
ACE_NEW_RETURN (this->fdev_,
FTP_Server_FDev,
-1);
+ this->fdev_->flowname ("Data");
+
AVStreams::MMDevice_var mmdevice = this->mmdevice_->_this (ACE_TRY_ENV);
ACE_TRY_CHECK;
AVStreams::FDev_var fdev = this->fdev_->_this (ACE_TRY_ENV);
@@ -263,8 +267,10 @@ main (int argc,
template class ACE_Singleton <Server,ACE_Null_Mutex>;
template class TAO_AV_Endpoint_Reactive_Strategy_B <FTP_Server_StreamEndPoint,TAO_VDev,AV_Null_MediaCtrl>;
template class TAO_AV_Endpoint_Reactive_Strategy <FTP_Server_StreamEndPoint,TAO_VDev,AV_Null_MediaCtrl>;
+template class TAO_FDev <TAO_FlowProducer, FTP_Server_FlowEndPoint>;
#elif defined (ACE_HAS_TEMPLATE_INSTANTIATION_PRAGMA)
#pragma instantiate ACE_Singleton <Server,ACE_Null_Mutex>
#pragma instantiate TAO_AV_Endpoint_Reactive_Strategy_B <FTP_Server_StreamEndPoint,TAO_VDev,AV_Null_MediaCtrl>
#pragma instantiate TAO_AV_Endpoint_Reactive_Strategy <FTP_Server_StreamEndPoint,TAO_VDev,AV_Null_MediaCtrl>
+#pragma instantiate TAO_FDev <TAO_FlowProducer, FTP_Server_FlowEndPoint>
#endif /* ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION */
diff --git a/TAO/orbsvcs/tests/AVStreams/Full_Profile/server.h b/TAO/orbsvcs/tests/AVStreams/Full_Profile/server.h
index 524b6653029..86f61d2ebcf 100644
--- a/TAO/orbsvcs/tests/AVStreams/Full_Profile/server.h
+++ b/TAO/orbsvcs/tests/AVStreams/Full_Profile/server.h
@@ -5,6 +5,7 @@
#include "tao/TAO.h"
#include "orbsvcs/Naming/Naming_Utils.h"
#include "orbsvcs/AV/AVStreams_i.h"
+#include "orbsvcs/AV/Flows_T.h"
#include "orbsvcs/AV/Endpoint_Strategy.h"
#include "orbsvcs/AV/Transport.h"
#include "orbsvcs/AV/sfp.h"
@@ -16,7 +17,8 @@ class FTP_Server_Callback
{
public:
virtual int handle_stop (void);
- virtual int receive_frame (ACE_Message_Block *frame);
+ virtual int receive_frame (ACE_Message_Block *frame,
+ TAO_AV_frame_info *);
virtual int handle_end_stream (void);
};
@@ -29,20 +31,21 @@ public:
TAO_AV_Callback *&callback);
};
-class FTP_Server_FDev
- :public TAO_FDev
-{
-public:
- FTP_Server_FDev (void);
- virtual AVStreams::FlowConsumer_ptr make_consumer (AVStreams::FlowConnection_ptr the_requester,
- AVStreams::QoS & the_qos,
- CORBA::Boolean_out met_qos,
- char *& named_fdev,
- CORBA::Environment &env = CORBA::Environment::default_environment ());
- // bridge method for the application to override the consumer object
- // creation. Default implementation creates a TAO_FlowConsumer.
+typedef TAO_FDev <TAO_FlowProducer, FTP_Server_FlowEndPoint> FTP_Server_FDev;
+// class FTP_Server_FDev
+// :public TAO_FDev
+// {
+// public:
+// FTP_Server_FDev (void);
+// virtual AVStreams::FlowConsumer_ptr make_consumer (AVStreams::FlowConnection_ptr the_requester,
+// AVStreams::QoS & the_qos,
+// CORBA::Boolean_out met_qos,
+// char *& named_fdev,
+// CORBA::Environment &env = CORBA::Environment::default_environment ());
+// // bridge method for the application to override the consumer object
+// // creation. Default implementation creates a TAO_FlowConsumer.
-};
+// };
class Server
{
diff --git a/TAO/orbsvcs/tests/AVStreams/Multicast/ftp.cpp b/TAO/orbsvcs/tests/AVStreams/Multicast/ftp.cpp
index ff15edfc45d..3a4b5cc9576 100644
--- a/TAO/orbsvcs/tests/AVStreams/Multicast/ftp.cpp
+++ b/TAO/orbsvcs/tests/AVStreams/Multicast/ftp.cpp
@@ -2,22 +2,28 @@
#include "ftp.h"
-FTP_Client_Callback::FTP_Client_Callback (FTP_Client_Flow_Handler *handler)
- :handler_ (handler)
+FTP_Client_Callback::FTP_Client_Callback (void)
+ // :handler_ (handler),
+ :count_ (0)
{
}
-int
-FTP_Client_Callback::handle_start (void)
-{
- return this->handler_->start ();
-}
+// FTP_Client_Callback::FTP_Client_Callback (FTP_Client_Flow_Handler *handler)
+// :handler_ (handler)
+// {
+// }
-int
-FTP_Client_Callback::handle_stop (void)
-{
- return this->handler_->stop ();
-}
+// int
+// FTP_Client_Callback::handle_start (void)
+// {
+// return this->handler_->start ();
+// }
+
+// int
+// FTP_Client_Callback::handle_stop (void)
+// {
+// return this->handler_->stop ();
+// }
int
FTP_Client_Callback::handle_end_stream (void)
@@ -32,95 +38,26 @@ FTP_Client_StreamEndPoint::FTP_Client_StreamEndPoint (TAO_ORB_Manager *orb_manag
}
-int
-FTP_Client_StreamEndPoint::get_callback (const char *flowname,
- TAO_AV_Callback *&callback)
+void
+FTP_Client_Callback::get_timeout (ACE_Time_Value *&tv,
+ void *&arg)
{
- ACE_Time_Value timeout (2);
- ACE_NEW_RETURN (this->handler_,
- FTP_Client_Flow_Handler (this->orb_manager_,
- timeout),
- -1);
- ACE_NEW_RETURN (this->callback_,
- FTP_Client_Callback (this->handler_),
- -1);
- callback = this->callback_;
- return 0;
-}
-
-int
-FTP_Client_StreamEndPoint::set_protocol_object (const char *flowname,
- TAO_AV_Protocol_Object *object)
-{
- int result = this->handler_->set_protocol_object (object);
- ACE_CString flow_string (flowname);
- if (flow_string.find ("RTP") != flow_string.npos)
- {
- // Set the policies.
- TAO_AV_Policy_Manager policy_manager;
- CORBA::ULong ssrc = 25;
- int payload_type = 1;
- PolicyList list (2);
- list.length (2);
- list [0] = policy_manager.create_policy (TAO_AV_Policy::TAO_AV_SSRC_POLICY,
- &ssrc);
- list [1] = policy_manager.create_policy (TAO_AV_Policy::TAO_AV_PAYLOAD_TYPE_POLICY,
- &payload_type);
- object->set_policies (list);
- }
- return 0;
-}
-
-FTP_Client_Flow_Handler::FTP_Client_Flow_Handler (TAO_ORB_Manager *orb_manager,
- ACE_Time_Value &timeout)
- :orb_manager_ (orb_manager),
- count_ (0),
- protocol_object_ (0),
- timeout_ (timeout)
-{
-}
-
-int
-FTP_Client_Flow_Handler::start (void)
-{
- ACE_DEBUG ((LM_DEBUG,"FTP_Client_Flow_Handler::start"));
- ACE_Time_Value delta = ACE_Time_Value::zero;
- this->timer_id_ =
- TAO_AV_CORE::instance ()->reactor ()->schedule_timer (this,
- 0,
- delta,
- this->timeout_);
- return 0;
+ ACE_Time_Value *timeout;
+ ACE_NEW (timeout,
+ ACE_Time_Value(2));
+ tv = timeout;
}
int
-FTP_Client_Flow_Handler::stop (void)
+FTP_Client_Callback::handle_timeout (void *arg)
{
- ACE_DEBUG ((LM_DEBUG,"FTP_Client_Flow_Handler::stop"));
- int result = TAO_AV_CORE::instance ()->reactor ()->cancel_timer (this->timer_id_);
- if (result < 0)
- ACE_ERROR_RETURN ((LM_ERROR,"FTP_Client_Flow_Handler::stop cancel timer failed\n"),-1);
- return 0;
-}
-
-int
-FTP_Client_Flow_Handler::set_protocol_object (TAO_AV_Protocol_Object *object)
-{
- this->protocol_object_ = object;
- return 0;
-}
-int
-FTP_Client_Flow_Handler::handle_timeout (const ACE_Time_Value &tv,
- const void *arg)
-{
- ACE_DEBUG ((LM_DEBUG,"FTP_Client_StreamEndPoint::handle_timeout"));
ACE_Message_Block mb (BUFSIZ);
+ ACE_DEBUG ((LM_DEBUG,"FTP_Client_Callback::get_frame"));
char *buf = mb.rd_ptr ();
cerr << "message block size" << mb.size () << endl;
int n = ACE_OS::fread(buf,1,mb.size (),CLIENT::instance ()->file ());
if (n < 0)
{
- TAO_AV_CORE::instance ()->reactor ()->cancel_timer (this->timer_id_);
ACE_ERROR_RETURN ((LM_ERROR,"FTP_Client_Flow_Handler::fread end of file\n"),-1);
}
if (n == 0)
@@ -133,11 +70,11 @@ FTP_Client_Flow_Handler::handle_timeout (const ACE_Time_Value &tv,
{
ACE_DEBUG ((LM_DEBUG,"handle_timeout:End of file\n"));
AVStreams::flowSpec stop_spec (1);
- stop_spec.length (1);
ACE_DECLARE_NEW_CORBA_ENV;
- stop_spec [0] = CORBA::string_dup (CLIENT::instance ()->flowname ());
CLIENT::instance ()->streamctrl ()->stop (stop_spec,ACE_TRY_ENV);
ACE_CHECK_RETURN (-1);
+ CLIENT::instance ()->streamctrl ()->destroy (stop_spec,ACE_TRY_ENV);
+ TAO_AV_CORE::instance ()->stop_run ();
}
else
return 0;
@@ -151,8 +88,132 @@ FTP_Client_Flow_Handler::handle_timeout (const ACE_Time_Value &tv,
if (result < 0)
ACE_ERROR_RETURN ((LM_ERROR,"send failed:%p","FTP_Client_Flow_Handler::send \n"),-1);
ACE_DEBUG ((LM_DEBUG,"handle_timeout::buffer sent succesfully\n"));
+ return 0;
+}
+
+int
+FTP_Client_StreamEndPoint::get_callback (const char *flowname,
+ TAO_AV_Callback *&callback)
+{
+// ACE_Time_Value timeout (2);
+// ACE_NEW_RETURN (this->handler_,
+// FTP_Client_Flow_Handler (this->orb_manager_,
+// timeout),
+// -1);
+ ACE_NEW_RETURN (this->callback_,
+ // FTP_Client_Callback (this->handler_),
+ FTP_Client_Callback,
+ -1);
+ callback = this->callback_;
+ return 0;
+}
+
+int
+FTP_Client_StreamEndPoint::set_protocol_object (const char *flowname,
+ TAO_AV_Protocol_Object *object)
+{
+ // int result = this->handler_->set_protocol_object (object);
+ this->callback_->set_protocol_object (object);
+ ACE_CString flow_string (flowname);
+ if (flow_string.find ("RTP") != flow_string.npos)
+ {
+ // Set the policies.
+ TAO_AV_Policy_Manager policy_manager;
+ CORBA::ULong ssrc = 25;
+ int payload_type = 1;
+ PolicyList list (2);
+ list.length (2);
+ list [0] = policy_manager.create_policy (TAO_AV_Policy::TAO_AV_SSRC_POLICY,
+ &ssrc);
+ list [1] = policy_manager.create_policy (TAO_AV_Policy::TAO_AV_PAYLOAD_TYPE_POLICY,
+ &payload_type);
+ object->set_policies (list);
+ }
+ return 0;
}
+// FTP_Client_Flow_Handler::FTP_Client_Flow_Handler (TAO_ORB_Manager *orb_manager,
+// ACE_Time_Value &timeout)
+// :orb_manager_ (orb_manager),
+// count_ (0),
+// protocol_object_ (0),
+// timeout_ (timeout)
+// {
+// }
+
+// int
+// FTP_Client_Flow_Handler::start (void)
+// {
+// ACE_DEBUG ((LM_DEBUG,"FTP_Client_Flow_Handler::start"));
+// ACE_Time_Value delta = ACE_Time_Value::zero;
+// this->timer_id_ =
+// TAO_AV_CORE::instance ()->reactor ()->schedule_timer (this,
+// 0,
+// delta,
+// this->timeout_);
+// return 0;
+// }
+
+// int
+// FTP_Client_Flow_Handler::stop (void)
+// {
+// ACE_DEBUG ((LM_DEBUG,"FTP_Client_Flow_Handler::stop"));
+// int result = TAO_AV_CORE::instance ()->reactor ()->cancel_timer (this->timer_id_);
+// if (result < 0)
+// ACE_ERROR_RETURN ((LM_ERROR,"FTP_Client_Flow_Handler::stop cancel timer failed\n"),-1);
+// return 0;
+// }
+
+// int
+// FTP_Client_Flow_Handler::set_protocol_object (TAO_AV_Protocol_Object *object)
+// {
+// this->protocol_object_ = object;
+// return 0;
+// }
+// int
+// FTP_Client_Flow_Handler::handle_timeout (const ACE_Time_Value &tv,
+// const void *arg)
+// {
+// ACE_DEBUG ((LM_DEBUG,"FTP_Client_StreamEndPoint::handle_timeout"));
+// ACE_Message_Block mb (BUFSIZ);
+// char *buf = mb.rd_ptr ();
+// cerr << "message block size" << mb.size () << endl;
+// int n = ACE_OS::fread(buf,1,mb.size (),CLIENT::instance ()->file ());
+// if (n < 0)
+// {
+// TAO_AV_CORE::instance ()->reactor ()->cancel_timer (this->timer_id_);
+// ACE_ERROR_RETURN ((LM_ERROR,"FTP_Client_Flow_Handler::fread end of file\n"),-1);
+// }
+// if (n == 0)
+// {
+// if (::feof (CLIENT::instance ()->file ()))
+// {
+// // wait for sometime for the data to be flushed to the other side.
+// this->count_++;
+// if (this->count_ == 2)
+// {
+// ACE_DEBUG ((LM_DEBUG,"handle_timeout:End of file\n"));
+// AVStreams::flowSpec stop_spec (1);
+// stop_spec.length (1);
+// ACE_DECLARE_NEW_CORBA_ENV;
+// stop_spec [0] = CORBA::string_dup (CLIENT::instance ()->flowname ());
+// CLIENT::instance ()->streamctrl ()->stop (stop_spec,ACE_TRY_ENV);
+// ACE_CHECK_RETURN (-1);
+// }
+// else
+// return 0;
+// }
+// else
+// ACE_ERROR_RETURN ((LM_ERROR,"FTP_Client_Flow_Handler::fread error\n"),-1);
+// }
+// cerr << "read bytes = " << n << endl;
+// mb.wr_ptr (n);
+// int result = this->protocol_object_->send_frame (&mb);
+// if (result < 0)
+// ACE_ERROR_RETURN ((LM_ERROR,"send failed:%p","FTP_Client_Flow_Handler::send \n"),-1);
+// ACE_DEBUG ((LM_DEBUG,"handle_timeout::buffer sent succesfully\n"));
+// }
+
Endpoint_Reactive_Strategy::Endpoint_Reactive_Strategy (TAO_ORB_Manager *orb_manager,
Client *client)
diff --git a/TAO/orbsvcs/tests/AVStreams/Multicast/ftp.h b/TAO/orbsvcs/tests/AVStreams/Multicast/ftp.h
index c55e5ea1308..1d0a3b48aa8 100644
--- a/TAO/orbsvcs/tests/AVStreams/Multicast/ftp.h
+++ b/TAO/orbsvcs/tests/AVStreams/Multicast/ftp.h
@@ -13,35 +13,43 @@
#include "orbsvcs/AV/sfp.h"
#include "orbsvcs/AV/MCast.h"
-class FTP_Client_Flow_Handler
- :public virtual ACE_Event_Handler
-{
-public:
- FTP_Client_Flow_Handler (TAO_ORB_Manager *orb_manager,
- ACE_Time_Value &timeout);
- virtual int handle_timeout (const ACE_Time_Value &tv,
- const void *arg = 0);
- virtual int start (void);
- virtual int stop (void);
- virtual int set_protocol_object (TAO_AV_Protocol_Object *object);
-protected:
- TAO_ORB_Manager *orb_manager_;
- long timer_id_;
- int count_;
- TAO_AV_Protocol_Object *protocol_object_;
- ACE_Time_Value timeout_;
-};
+// class FTP_Client_Flow_Handler
+// :public virtual ACE_Event_Handler
+// {
+// public:
+// FTP_Client_Flow_Handler (TAO_ORB_Manager *orb_manager,
+// ACE_Time_Value &timeout);
+// virtual int handle_timeout (const ACE_Time_Value &tv,
+// const void *arg = 0);
+// virtual int start (void);
+// virtual int stop (void);
+// virtual int set_protocol_object (TAO_AV_Protocol_Object *object);
+// protected:
+// TAO_ORB_Manager *orb_manager_;
+// long timer_id_;
+// int count_;
+// TAO_AV_Protocol_Object *protocol_object_;
+// ACE_Time_Value timeout_;
+// };
class FTP_Client_Callback
:public TAO_AV_Callback
{
public:
- FTP_Client_Callback (FTP_Client_Flow_Handler *handler);
- virtual int handle_start (void);
- virtual int handle_stop (void);
+ FTP_Client_Callback (void);
+ // FTP_Client_Callback (FTP_Client_Flow_Handler *handler);
+// virtual int handle_start (void);
+// virtual int handle_stop (void);
virtual int handle_end_stream (void);
+ void set_protocol_object (TAO_AV_Protocol_Object *protocol_object) {this->protocol_object_ = protocol_object;}
+ virtual int handle_timeout (void *arg);
+ virtual void get_timeout (ACE_Time_Value *&tv,
+ void *&arg);
+
protected:
- FTP_Client_Flow_Handler *handler_;
+ int count_;
+ // FTP_Client_Flow_Handler *handler_;
+ TAO_AV_Protocol_Object *protocol_object_;
};
class FTP_Client_StreamEndPoint
@@ -57,7 +65,7 @@ public:
TAO_AV_Protocol_Object *object);
protected:
TAO_ORB_Manager *orb_manager_;
- FTP_Client_Flow_Handler *handler_;
+ // FTP_Client_Flow_Handler *handler_;
FTP_Client_Callback *callback_;
};
diff --git a/TAO/orbsvcs/tests/AVStreams/Multicast/server.cpp b/TAO/orbsvcs/tests/AVStreams/Multicast/server.cpp
index 8609830d663..75b987b54c2 100644
--- a/TAO/orbsvcs/tests/AVStreams/Multicast/server.cpp
+++ b/TAO/orbsvcs/tests/AVStreams/Multicast/server.cpp
@@ -27,7 +27,8 @@ FTP_Server_Callback::handle_stop (void)
}
int
-FTP_Server_Callback::receive_frame (ACE_Message_Block *frame)
+FTP_Server_Callback::receive_frame (ACE_Message_Block *frame,
+ TAO_AV_frame_info *)
{
ACE_DEBUG ((LM_DEBUG,"FTP_Server_Callback::receive_frame\n"));
while (frame != 0)
diff --git a/TAO/orbsvcs/tests/AVStreams/Multicast/server.h b/TAO/orbsvcs/tests/AVStreams/Multicast/server.h
index 04c90ba2d99..0c9cb23f72f 100644
--- a/TAO/orbsvcs/tests/AVStreams/Multicast/server.h
+++ b/TAO/orbsvcs/tests/AVStreams/Multicast/server.h
@@ -26,7 +26,8 @@ class FTP_Server_Callback
{
public:
virtual int handle_stop (void);
- virtual int receive_frame (ACE_Message_Block *frame);
+ virtual int receive_frame (ACE_Message_Block *frame,
+ TAO_AV_frame_info *);
virtual int handle_end_stream (void);
};
diff --git a/TAO/orbsvcs/tests/AVStreams/Multicast_Full_Profile/ftp.cpp b/TAO/orbsvcs/tests/AVStreams/Multicast_Full_Profile/ftp.cpp
index d83beb67075..925ea473a6c 100644
--- a/TAO/orbsvcs/tests/AVStreams/Multicast_Full_Profile/ftp.cpp
+++ b/TAO/orbsvcs/tests/AVStreams/Multicast_Full_Profile/ftp.cpp
@@ -2,99 +2,193 @@
#include "ftp.h"
-FTP_Client_Callback::FTP_Client_Callback (FTP_Client_Flow_Handler *handler)
- :handler_ (handler)
-{
-}
-
-int
-FTP_Client_Callback::handle_start (void)
-{
- ACE_DEBUG ((LM_DEBUG,"FTP_Client_Callback::handle_start"));
- return this->handler_->start ();
-}
-
-int
-FTP_Client_Callback::handle_stop (void)
-{
- ACE_DEBUG ((LM_DEBUG,"FTP_Client_Callback::handle_stop"));
- return this->handler_->stop ();
-}
-
+// FTP_Client_Callback::FTP_Client_Callback (FTP_Client_Flow_Handler *handler)
+// :handler_ (handler)
+// {
+// }
+
+// int
+// FTP_Client_Callback::handle_start (void)
+// {
+// ACE_DEBUG ((LM_DEBUG,"FTP_Client_Callback::handle_start"));
+// return this->handler_->start ();
+// }
+
+// int
+// FTP_Client_Callback::handle_stop (void)
+// {
+// ACE_DEBUG ((LM_DEBUG,"FTP_Client_Callback::handle_stop"));
+// return this->handler_->stop ();
+// }
+
+
+// FTP_Client_Flow_Handler::FTP_Client_Flow_Handler (TAO_ORB_Manager *orb_manager,
+// ACE_Time_Value &timeout)
+// :TAO_FlowProducer ("Data",CLIENT::instance ()->protocols (),CLIENT::instance ()->format ()),
+// orb_manager_ (orb_manager),
+// count_ (0),
+// timeout_ (timeout)
+// {
+// }
+
+// int
+// FTP_Client_Flow_Handler::get_callback (const char *flowname,
+// TAO_AV_Callback *&callback)
+// {
+// ACE_DEBUG ((LM_DEBUG,"FTP_Client_Flow_Handler::get_callback\n"));
+// ACE_NEW_RETURN (callback,
+// FTP_Client_Callback (this),
+// -1);
+// return 0;
+// }
+
+// int
+// FTP_Client_Flow_Handler::start (void)
+// {
+// ACE_DEBUG ((LM_DEBUG,"FTP_Client_Flow_Handler::start"));
+// ACE_Time_Value delta = ACE_Time_Value::zero;
+// this->timer_id_ =
+// TAO_AV_CORE::instance ()->reactor ()->schedule_timer (this,
+// 0,
+// delta,
+// this->timeout_);
+// return 0;
+// }
+
+// int
+// FTP_Client_Flow_Handler::stop (void)
+// {
+// ACE_DEBUG ((LM_DEBUG,"FTP_Client_Flow_Handler::stop"));
+// int result = TAO_AV_CORE::instance ()->reactor ()->cancel_timer (this->timer_id_);
+// if (result < 0)
+// ACE_ERROR_RETURN ((LM_ERROR,"FTP_Client_Flow_Handler::stop cancel timer failed\n"),-1);
+// return 0;
+// }
+
+// int
+// FTP_Client_Flow_Handler::handle_timeout (const ACE_Time_Value &tv,
+// const void *arg)
+// {
+// ACE_DEBUG ((LM_DEBUG,"FTP_Client_StreamEndPoint::handle_timeout"));
+// ACE_Message_Block mb (BUFSIZ);
+// char *buf = mb.rd_ptr ();
+// cerr << "message block size" << mb.size () << endl;
+// int n = ACE_OS::fread(buf,1,mb.size (),CLIENT::instance ()->file ());
+// if (n < 0)
+// {
+// TAO_AV_CORE::instance ()->reactor ()->cancel_timer (this->timer_id_);
+// ACE_ERROR_RETURN ((LM_ERROR,"FTP_Client_Flow_Handler::fread end of file\n"),-1);
+// }
+// if (n == 0)
+// {
+// if (::feof (CLIENT::instance ()->file ()))
+// {
+// // wait for sometime for the data to be flushed to the other side.
+// this->count_++;
+// if (this->count_ == 2)
+// {
+// ACE_DECLARE_NEW_CORBA_ENV;
+// ACE_DEBUG ((LM_DEBUG,"handle_timeout:End of file\n"));
+// AVStreams::flowSpec stop_spec (1);
+// // stop_spec.length (1);
+// // stop_spec [0] = CORBA::string_dup (CLIENT::instance ()->flowname ());
+// CLIENT::instance ()->streamctrl ()->stop (stop_spec,ACE_TRY_ENV);
+// ACE_CHECK_RETURN (-1);
+// return 0;
+// }
+// else
+// return 0;
+// }
+// else
+// ACE_ERROR_RETURN ((LM_ERROR,"FTP_Client_Flow_Handler::fread error\n"),-1);
+// }
+// cerr << "read bytes = " << n << endl;
+// mb.wr_ptr (n);
+// int result = this->protocol_object_->send_frame (&mb);
+// if (result < 0)
+// ACE_ERROR_RETURN ((LM_ERROR,"send failed:%p","FTP_Client_Flow_Handler::send \n"),-1);
+// ACE_DEBUG ((LM_DEBUG,"handle_timeout::buffer sent succesfully\n"));
+// }
-FTP_Client_Flow_Handler::FTP_Client_Flow_Handler (TAO_ORB_Manager *orb_manager,
- ACE_Time_Value &timeout)
- :TAO_FlowProducer ("Data",CLIENT::instance ()->protocols (),CLIENT::instance ()->format ()),
- orb_manager_ (orb_manager),
- count_ (0),
- timeout_ (timeout)
-{
-}
+//------------------------------------------------------------
+// FTP_Client_FDev
+//------------------------------------------------------------
-int
-FTP_Client_Flow_Handler::get_callback (const char *flowname,
- TAO_AV_Callback *&callback)
+// FTP_Client_FDev::FTP_Client_FDev (TAO_ORB_Manager *orb_manager)
+// :TAO_FDev (CORBA::string_dup ("Data")),
+// orb_manager_ (orb_manager)
+// {
+// }
+
+// AVStreams::FlowProducer_ptr
+// FTP_Client_FDev::make_producer (AVStreams::FlowConnection_ptr the_requester,
+// AVStreams::QoS & the_qos,
+// CORBA::Boolean_out met_qos,
+// char *& named_fdev,
+// CORBA::Environment &ACE_TRY_ENV)
+// {
+// ACE_DEBUG ((LM_DEBUG,"FTP_Client_FDev::make_producer\n"));
+// FTP_Client_Flow_Handler *handler;
+// ACE_Time_Value timeout (2);
+// ACE_NEW_RETURN (handler,
+// FTP_Client_Flow_Handler (this->orb_manager_,
+// timeout),
+// 0);
+// AVStreams::FlowProducer_ptr producer = handler->_this (ACE_TRY_ENV);
+// ACE_CHECK_RETURN (0);
+// return producer;
+// }
+
+FTP_Client_Callback::FTP_Client_Callback (void)
+ // :handler_ (handler),
+ :count_ (0)
{
- ACE_DEBUG ((LM_DEBUG,"FTP_Client_Flow_Handler::get_callback\n"));
- ACE_NEW_RETURN (callback,
- FTP_Client_Callback (this),
- -1);
- return 0;
}
int
-FTP_Client_Flow_Handler::start (void)
+FTP_Client_Callback::handle_end_stream (void)
{
- ACE_DEBUG ((LM_DEBUG,"FTP_Client_Flow_Handler::start"));
- ACE_Time_Value delta = ACE_Time_Value::zero;
- this->timer_id_ =
- TAO_AV_CORE::instance ()->reactor ()->schedule_timer (this,
- 0,
- delta,
- this->timeout_);
+ TAO_AV_CORE::instance ()->stop_run ();
return 0;
}
-int
-FTP_Client_Flow_Handler::stop (void)
+void
+FTP_Client_Callback::get_timeout (ACE_Time_Value *&tv,
+ void *&arg)
{
- ACE_DEBUG ((LM_DEBUG,"FTP_Client_Flow_Handler::stop"));
- int result = TAO_AV_CORE::instance ()->reactor ()->cancel_timer (this->timer_id_);
- if (result < 0)
- ACE_ERROR_RETURN ((LM_ERROR,"FTP_Client_Flow_Handler::stop cancel timer failed\n"),-1);
- return 0;
+ ACE_Time_Value *timeout;
+ ACE_NEW (timeout,
+ ACE_Time_Value(2));
+ tv = timeout;
}
int
-FTP_Client_Flow_Handler::handle_timeout (const ACE_Time_Value &tv,
- const void *arg)
+FTP_Client_Callback::handle_timeout (void *arg)
{
- ACE_DEBUG ((LM_DEBUG,"FTP_Client_StreamEndPoint::handle_timeout"));
ACE_Message_Block mb (BUFSIZ);
+ ACE_DEBUG ((LM_DEBUG,"FTP_Client_Callback::get_frame"));
char *buf = mb.rd_ptr ();
cerr << "message block size" << mb.size () << endl;
int n = ACE_OS::fread(buf,1,mb.size (),CLIENT::instance ()->file ());
if (n < 0)
{
- TAO_AV_CORE::instance ()->reactor ()->cancel_timer (this->timer_id_);
ACE_ERROR_RETURN ((LM_ERROR,"FTP_Client_Flow_Handler::fread end of file\n"),-1);
}
if (n == 0)
{
- if (::feof (CLIENT::instance ()->file ()))
+ if (feof (CLIENT::instance ()->file ()))
{
// wait for sometime for the data to be flushed to the other side.
this->count_++;
if (this->count_ == 2)
{
- ACE_DECLARE_NEW_CORBA_ENV;
ACE_DEBUG ((LM_DEBUG,"handle_timeout:End of file\n"));
AVStreams::flowSpec stop_spec (1);
-// stop_spec.length (1);
-// stop_spec [0] = CORBA::string_dup (CLIENT::instance ()->flowname ());
+ ACE_DECLARE_NEW_CORBA_ENV;
CLIENT::instance ()->streamctrl ()->stop (stop_spec,ACE_TRY_ENV);
ACE_CHECK_RETURN (-1);
- return 0;
+ CLIENT::instance ()->streamctrl ()->destroy (stop_spec,ACE_TRY_ENV);
+ TAO_AV_CORE::instance ()->stop_run ();
}
else
return 0;
@@ -108,41 +202,36 @@ FTP_Client_Flow_Handler::handle_timeout (const ACE_Time_Value &tv,
if (result < 0)
ACE_ERROR_RETURN ((LM_ERROR,"send failed:%p","FTP_Client_Flow_Handler::send \n"),-1);
ACE_DEBUG ((LM_DEBUG,"handle_timeout::buffer sent succesfully\n"));
+ return 0;
}
-//------------------------------------------------------------
-// FTP_Client_FDev
-//------------------------------------------------------------
-
-FTP_Client_FDev::FTP_Client_FDev (TAO_ORB_Manager *orb_manager)
- :TAO_FDev (CORBA::string_dup ("Data")),
- orb_manager_ (orb_manager)
+FTP_Client_Producer::FTP_Client_Producer (void)
+ :TAO_FlowProducer ("Data",CLIENT::instance ()->protocols (),CLIENT::instance ()->format ())
{
}
+
+int
+FTP_Client_Producer::set_protocol_object (const char *flowname,
+ TAO_AV_Protocol_Object *object)
+{
+ this->callback_->set_protocol_object (object);
+ return 0;
+}
-AVStreams::FlowProducer_ptr
-FTP_Client_FDev::make_producer (AVStreams::FlowConnection_ptr the_requester,
- AVStreams::QoS & the_qos,
- CORBA::Boolean_out met_qos,
- char *& named_fdev,
- CORBA::Environment &ACE_TRY_ENV)
+int
+FTP_Client_Producer::get_callback (const char *flowname,
+ TAO_AV_Callback *&callback)
{
- ACE_DEBUG ((LM_DEBUG,"FTP_Client_FDev::make_producer\n"));
- FTP_Client_Flow_Handler *handler;
- ACE_Time_Value timeout (2);
- ACE_NEW_RETURN (handler,
- FTP_Client_Flow_Handler (this->orb_manager_,
- timeout),
- 0);
- AVStreams::FlowProducer_ptr producer = handler->_this (ACE_TRY_ENV);
- ACE_CHECK_RETURN (0);
- return producer;
+ ACE_NEW_RETURN (this->callback_,
+ FTP_Client_Callback,
+ -1);
+ callback = this->callback_;
}
Client::parse_args (int argc,
char **argv)
{
- ACE_Get_Opt opts (argc,argv,"f:a:p:s");
+ ACE_Get_Opt opts (argc,argv,"f:a:p:sd");
this->use_sfp_ = 0;
char c;
@@ -162,6 +251,9 @@ Client::parse_args (int argc,
case 's':
this->use_sfp_ = 1;
break;
+ case 'd':
+ TAO_debug_level++;
+ break;
default:
ACE_DEBUG ((LM_DEBUG,"Unknown option\n"));
return -1;
@@ -297,9 +389,16 @@ Client::init (int argc,char **argv)
this->orb_manager_->activate_poa_manager (ACE_TRY_ENV);
ACE_TRY_CHECK;
ACE_NEW_RETURN (this->fdev_,
- FTP_Client_FDev (this->orb_manager_),
+ // FTP_Client_FDev (this->orb_manager_),
+ FTP_Client_FDev,
-1);
+ ACE_NEW_RETURN (this->flowname_,
+ char [BUFSIZ],
+ 0);
+ ACE_OS::sprintf (this->flowname_,
+ "Data");
+ this->fdev_->flowname (this->flowname ());
AVStreams::MMDevice_var mmdevice = this->client_mmdevice_._this (ACE_TRY_ENV);
ACE_TRY_CHECK;
AVStreams::FDev_var fdev = this->fdev_->_this (ACE_TRY_ENV);
@@ -347,12 +446,6 @@ Client::run (void)
// Bind the client and server mmdevices.
ACE_INET_Addr addr (this->address_);
- ACE_NEW_RETURN (this->flowname_,
- char [BUFSIZ],
- 0);
- ACE_OS::sprintf (this->flowname_,
- "Data",
- this->protocol_);
TAO_Forward_FlowSpec_Entry entry (this->flowname_,
"IN",
"USER_DEFINED",
diff --git a/TAO/orbsvcs/tests/AVStreams/Multicast_Full_Profile/ftp.h b/TAO/orbsvcs/tests/AVStreams/Multicast_Full_Profile/ftp.h
index 1d3118a851e..2de6020e272 100644
--- a/TAO/orbsvcs/tests/AVStreams/Multicast_Full_Profile/ftp.h
+++ b/TAO/orbsvcs/tests/AVStreams/Multicast_Full_Profile/ftp.h
@@ -8,58 +8,91 @@
#include "tao/TAO.h"
#include "orbsvcs/Naming/Naming_Utils.h"
#include "orbsvcs/AV/AVStreams_i.h"
+#include "orbsvcs/AV/Flows_T.h"
#include "orbsvcs/AV/Endpoint_Strategy.h"
-#include "orbsvcs/AV/Transport.h"
#include "orbsvcs/AV/sfp.h"
#include "orbsvcs/AV/MCast.h"
-class FTP_Client_Flow_Handler
- :public virtual ACE_Event_Handler,
- public virtual TAO_FlowProducer
+// class FTP_Client_Flow_Handler
+// // :public virtual ACE_Event_Handler,
+// public virtual TAO_FlowProducer
+// {
+// public:
+// FTP_Client_Flow_Handler (TAO_ORB_Manager *orb_manager,
+// ACE_Time_Value &timeout);
+// virtual int handle_timeout (const ACE_Time_Value &tv,
+// const void *arg = 0);
+// virtual int start (void);
+// virtual int stop (void);
+// virtual int get_callback (const char *flowname,
+// TAO_AV_Callback *&callback);
+// protected:
+// TAO_ORB_Manager *orb_manager_;
+// long timer_id_;
+// int count_;
+// ACE_Time_Value timeout_;
+// };
+
+// class FTP_Client_Callback
+// :public TAO_AV_Callback
+// {
+// public:
+// FTP_Client_Callback (FTP_Client_Flow_Handler *handler);
+// virtual int handle_start (void);
+// virtual int handle_stop (void);
+// protected:
+// FTP_Client_Flow_Handler *handler_;
+// };
+
+class FTP_Client_Callback;
+class FTP_Client_Producer
+ :public virtual TAO_FlowProducer
{
public:
- FTP_Client_Flow_Handler (TAO_ORB_Manager *orb_manager,
- ACE_Time_Value &timeout);
- virtual int handle_timeout (const ACE_Time_Value &tv,
- const void *arg = 0);
- virtual int start (void);
- virtual int stop (void);
+ FTP_Client_Producer (void);
virtual int get_callback (const char *flowname,
TAO_AV_Callback *&callback);
+ int set_protocol_object (const char *flowname,
+ TAO_AV_Protocol_Object *object);
protected:
- TAO_ORB_Manager *orb_manager_;
- long timer_id_;
- int count_;
- ACE_Time_Value timeout_;
+ FTP_Client_Callback *callback_;
};
class FTP_Client_Callback
:public TAO_AV_Callback
{
public:
- FTP_Client_Callback (FTP_Client_Flow_Handler *handler);
- virtual int handle_start (void);
- virtual int handle_stop (void);
-protected:
- FTP_Client_Flow_Handler *handler_;
-};
+ FTP_Client_Callback (void);
+ virtual int handle_timeout (void *arg);
+ virtual int handle_end_stream (void);
+ virtual void get_timeout (ACE_Time_Value *&tv,
+ void *&arg);
+ // virtual int get_frame (ACE_Message_Block *&block,TAO_AV_frame_info *&frame_info);
+ void set_protocol_object (TAO_AV_Protocol_Object *protocol_object) {this->protocol_object_ = protocol_object;}
-class FTP_Client_FDev
- :public TAO_FDev
-{
-public:
- FTP_Client_FDev (TAO_ORB_Manager *orb_manger);
- virtual AVStreams::FlowProducer_ptr make_producer (AVStreams::FlowConnection_ptr the_requester,
- AVStreams::QoS & the_qos,
- CORBA::Boolean_out met_qos,
- char *& named_fdev,
- CORBA::Environment &env = CORBA::Environment::default_environment ());
protected:
- TAO_ORB_Manager *orb_manager_;
+ // FTP_Client_Flow_Handler *handler_;
+ int count_;
+ TAO_AV_Protocol_Object *protocol_object_;
};
+// class FTP_Client_FDev
+// :public TAO_FDev
+// {
+// public:
+// FTP_Client_FDev (TAO_ORB_Manager *orb_manger);
+// virtual AVStreams::FlowProducer_ptr make_producer (AVStreams::FlowConnection_ptr the_requester,
+// AVStreams::QoS & the_qos,
+// CORBA::Boolean_out met_qos,
+// char *& named_fdev,
+// CORBA::Environment &env = CORBA::Environment::default_environment ());
+// protected:
+// TAO_ORB_Manager *orb_manager_;
+// };
+
typedef TAO_AV_Endpoint_Reactive_Strategy_A<TAO_StreamEndPoint_A,TAO_VDev,AV_Null_MediaCtrl> ENDPOINT_STRATEGY;
+typedef TAO_FDev <FTP_Client_Producer,TAO_FlowConsumer> FTP_Client_FDev;
class Client
{
public:
diff --git a/TAO/orbsvcs/tests/AVStreams/Multicast_Full_Profile/server.cpp b/TAO/orbsvcs/tests/AVStreams/Multicast_Full_Profile/server.cpp
index 94031382cc9..dc706bb3ed2 100644
--- a/TAO/orbsvcs/tests/AVStreams/Multicast_Full_Profile/server.cpp
+++ b/TAO/orbsvcs/tests/AVStreams/Multicast_Full_Profile/server.cpp
@@ -44,7 +44,8 @@ FTP_Server_Callback::handle_stop (void)
}
int
-FTP_Server_Callback::receive_frame (ACE_Message_Block *frame)
+FTP_Server_Callback::receive_frame (ACE_Message_Block *frame,
+ TAO_AV_frame_info *)
{
ACE_DEBUG ((LM_DEBUG,"FTP_Server_Callback::receive_frame\n"));
while (frame != 0)
@@ -69,26 +70,26 @@ FTP_Server_Callback::handle_end_stream (void)
return 0;
}
-FTP_Server_FDev::FTP_Server_FDev (void)
- :TAO_FDev ("Data")
-{
-}
+// FTP_Server_FDev::FTP_Server_FDev (void)
+// :TAO_FDev ("Data")
+// {
+// }
-AVStreams::FlowConsumer_ptr
-FTP_Server_FDev::make_consumer (AVStreams::FlowConnection_ptr the_requester,
- AVStreams::QoS & the_qos,
- CORBA::Boolean_out met_qos,
- char *& named_fdev,
- CORBA::Environment &ACE_TRY_ENV)
-{
- ACE_DEBUG ((LM_DEBUG,"FTP_Server_FDev::make_consumer"));
- FTP_Server_FlowEndPoint *endpoint;
- ACE_NEW_RETURN (endpoint,
- FTP_Server_FlowEndPoint,
- 0);
- return endpoint->_this (ACE_TRY_ENV);
- ACE_CHECK_RETURN (0);
-}
+// AVStreams::FlowConsumer_ptr
+// FTP_Server_FDev::make_consumer (AVStreams::FlowConnection_ptr the_requester,
+// AVStreams::QoS & the_qos,
+// CORBA::Boolean_out met_qos,
+// char *& named_fdev,
+// CORBA::Environment &ACE_TRY_ENV)
+// {
+// ACE_DEBUG ((LM_DEBUG,"FTP_Server_FDev::make_consumer"));
+// FTP_Server_FlowEndPoint *endpoint;
+// ACE_NEW_RETURN (endpoint,
+// FTP_Server_FlowEndPoint,
+// 0);
+// return endpoint->_this (ACE_TRY_ENV);
+// ACE_CHECK_RETURN (0);
+// }
Server::Server (void)
:orb_manager_ (TAO_AV_CORE::instance ()->orb_manager ()),
@@ -160,6 +161,7 @@ Server::init (int argc,
ACE_NEW_RETURN (this->fdev_,
FTP_Server_FDev,
-1);
+ this->fdev_->flowname ("Data");
AVStreams::MMDevice_var mmdevice = this->mmdevice_->_this (ACE_TRY_ENV);
ACE_TRY_CHECK;
AVStreams::FDev_var fdev = this->fdev_->_this (ACE_TRY_ENV);
diff --git a/TAO/orbsvcs/tests/AVStreams/Multicast_Full_Profile/server.h b/TAO/orbsvcs/tests/AVStreams/Multicast_Full_Profile/server.h
index 524b6653029..b415c7681ee 100644
--- a/TAO/orbsvcs/tests/AVStreams/Multicast_Full_Profile/server.h
+++ b/TAO/orbsvcs/tests/AVStreams/Multicast_Full_Profile/server.h
@@ -6,7 +6,7 @@
#include "orbsvcs/Naming/Naming_Utils.h"
#include "orbsvcs/AV/AVStreams_i.h"
#include "orbsvcs/AV/Endpoint_Strategy.h"
-#include "orbsvcs/AV/Transport.h"
+#include "orbsvcs/AV/Flows_T.h"
#include "orbsvcs/AV/sfp.h"
#include "orbsvcs/AV/MCast.h"
#include "orbsvcs/AV/Policy.h"
@@ -16,7 +16,8 @@ class FTP_Server_Callback
{
public:
virtual int handle_stop (void);
- virtual int receive_frame (ACE_Message_Block *frame);
+ virtual int receive_frame (ACE_Message_Block *frame,
+ TAO_AV_frame_info *frame_info);
virtual int handle_end_stream (void);
};
@@ -29,20 +30,22 @@ public:
TAO_AV_Callback *&callback);
};
-class FTP_Server_FDev
- :public TAO_FDev
-{
-public:
- FTP_Server_FDev (void);
- virtual AVStreams::FlowConsumer_ptr make_consumer (AVStreams::FlowConnection_ptr the_requester,
- AVStreams::QoS & the_qos,
- CORBA::Boolean_out met_qos,
- char *& named_fdev,
- CORBA::Environment &env = CORBA::Environment::default_environment ());
- // bridge method for the application to override the consumer object
- // creation. Default implementation creates a TAO_FlowConsumer.
+// class FTP_Server_FDev
+// :public TAO_FDev
+// {
+// public:
+// FTP_Server_FDev (void);
+// virtual AVStreams::FlowConsumer_ptr make_consumer (AVStreams::FlowConnection_ptr the_requester,
+// AVStreams::QoS & the_qos,
+// CORBA::Boolean_out met_qos,
+// char *& named_fdev,
+// CORBA::Environment &env = CORBA::Environment::default_environment ());
+// // bridge method for the application to override the consumer object
+// // creation. Default implementation creates a TAO_FlowConsumer.
-};
+// };
+
+typedef TAO_FDev <TAO_FlowProducer, FTP_Server_FlowEndPoint> FTP_Server_FDev;
class Server
{
diff --git a/TAO/orbsvcs/tests/AVStreams/Pluggable/Makefile b/TAO/orbsvcs/tests/AVStreams/Pluggable/Makefile
index 1453286c68d..92776f09769 100644
--- a/TAO/orbsvcs/tests/AVStreams/Pluggable/Makefile
+++ b/TAO/orbsvcs/tests/AVStreams/Pluggable/Makefile
@@ -45,7 +45,7 @@ include $(ACE_ROOT)/include/makeinclude/rules.nonested.GNU
include $(ACE_ROOT)/include/makeinclude/rules.bin.GNU
include $(ACE_ROOT)/include/makeinclude/rules.local.GNU
-DCFLAGS = -g
+#DCFLAGS = -g
LDFLAGS += -L$(TAO_ROOT)/orbsvcs/orbsvcs -L$(TAO_ROOT)/tao
CPPFLAGS += -I$(TAO_ROOT)/orbsvcs -I$(TAO_ROOT) $(TSS_ORB_FLAG)
diff --git a/TAO/orbsvcs/tests/AVStreams/Pluggable/ftp.cpp b/TAO/orbsvcs/tests/AVStreams/Pluggable/ftp.cpp
index eebb33fa009..b9c63df838a 100644
--- a/TAO/orbsvcs/tests/AVStreams/Pluggable/ftp.cpp
+++ b/TAO/orbsvcs/tests/AVStreams/Pluggable/ftp.cpp
@@ -2,125 +2,41 @@
#include "ftp.h"
-FTP_Client_Callback::FTP_Client_Callback (FTP_Client_Flow_Handler *handler)
- :handler_ (handler)
+FTP_Client_Callback::FTP_Client_Callback (void)
+ :count_ (0)
{
}
int
-FTP_Client_Callback::handle_start (void)
-{
- return this->handler_->start ();
-}
-
-int
-FTP_Client_Callback::handle_stop (void)
-{
- return this->handler_->stop ();
-}
-
-int
-FTP_Client_Callback::handle_end_stream (void)
+FTP_Client_Callback::handle_destroy (void)
{
TAO_AV_CORE::instance ()->stop_run ();
return 0;
}
-FTP_Client_StreamEndPoint::FTP_Client_StreamEndPoint (TAO_ORB_Manager *orb_manager)
- :orb_manager_ (orb_manager)
-{
-
-}
-
-int
-FTP_Client_StreamEndPoint::get_callback (const char */*flowname*/,
- TAO_AV_Callback *&callback)
-{
- ACE_Time_Value timeout (2);
- ACE_NEW_RETURN (this->handler_,
- FTP_Client_Flow_Handler (this->orb_manager_,
- timeout),
- -1);
- ACE_NEW_RETURN (this->callback_,
- FTP_Client_Callback (this->handler_),
- -1);
- callback = this->callback_;
- return 0;
-}
-
-int
-FTP_Client_StreamEndPoint::set_protocol_object (const char *flowname,
- TAO_AV_Protocol_Object *object)
-{
- this->handler_->set_protocol_object (object);
- ACE_CString flow_string (flowname);
- if (flow_string.find ("RTP") != flow_string.npos)
- {
- // Set the policies.
- TAO_AV_Policy_Manager policy_manager;
- CORBA::ULong ssrc = 25;
- int payload_type = 1;
- PolicyList list (2);
- list.length (2);
- list [0] = policy_manager.create_policy (TAO_AV_Policy::TAO_AV_SSRC_POLICY,
- &ssrc);
- list [1] = policy_manager.create_policy (TAO_AV_Policy::TAO_AV_PAYLOAD_TYPE_POLICY,
- &payload_type);
- object->set_policies (list);
- }
- return 0;
-}
-
-FTP_Client_Flow_Handler::FTP_Client_Flow_Handler (TAO_ORB_Manager *orb_manager,
- ACE_Time_Value &timeout)
- :orb_manager_ (orb_manager),
- count_ (0),
- protocol_object_ (0),
- timeout_ (timeout)
-{
-}
-
-int
-FTP_Client_Flow_Handler::start (void)
-{
- ACE_DEBUG ((LM_DEBUG,"FTP_Client_Flow_Handler::start"));
- ACE_Time_Value delta = ACE_Time_Value::zero;
- this->timer_id_ =
- TAO_AV_CORE::instance ()->reactor ()->schedule_timer (this,
- 0,
- delta,
- this->timeout_);
- return 0;
-}
-
-int
-FTP_Client_Flow_Handler::stop (void)
+void
+FTP_Client_Callback::get_timeout (ACE_Time_Value *&tv,
+ void *&arg)
{
- ACE_DEBUG ((LM_DEBUG,"FTP_Client_Flow_Handler::start"));
- int result = TAO_AV_CORE::instance ()->reactor ()->cancel_timer (this->timer_id_);
- if (result < 0)
- ACE_ERROR_RETURN ((LM_ERROR,"FTP_Client_Flow_Handler::stop cancel timer failed\n"),-1);
- return 0;
+ ACE_Time_Value *timeout;
+ ACE_NEW (timeout,
+ ACE_Time_Value(2));
+ tv = timeout;
}
+//@@coryan: Interpretation for the return value like ACE_Event_Handler's handle_timeout method.
int
-FTP_Client_Flow_Handler::set_protocol_object (TAO_AV_Protocol_Object *object)
+FTP_Client_Callback::handle_timeout (void *arg)
{
- this->protocol_object_ = object;
- return 0;
-}
-int
-FTP_Client_Flow_Handler::handle_timeout (const ACE_Time_Value &/*tv*/,
- const void */*arg*/)
-{
- ACE_DEBUG ((LM_DEBUG,"FTP_Client_StreamEndPoint::handle_timeout"));
+ //@@coryan: Use a preallocated buffer for benchmarks.
+ //Memory map the file.
ACE_Message_Block mb (BUFSIZ);
+ ACE_DEBUG ((LM_DEBUG,"FTP_Client_Callback::get_frame"));
char *buf = mb.rd_ptr ();
cerr << "message block size" << mb.size () << endl;
int n = ACE_OS::fread(buf,1,mb.size (),CLIENT::instance ()->file ());
if (n < 0)
{
- TAO_AV_CORE::instance ()->reactor ()->cancel_timer (this->timer_id_);
ACE_ERROR_RETURN ((LM_ERROR,"FTP_Client_Flow_Handler::fread end of file\n"),-1);
}
if (n == 0)
@@ -131,15 +47,14 @@ FTP_Client_Flow_Handler::handle_timeout (const ACE_Time_Value &/*tv*/,
this->count_++;
if (this->count_ == 2)
{
+ //@@coryan: Remove these code from this method.
+ //Should be called when the user wants to stop the stream.
ACE_DEBUG ((LM_DEBUG,"handle_timeout:End of file\n"));
AVStreams::flowSpec stop_spec (1);
ACE_DECLARE_NEW_CORBA_ENV;
- // stop_spec.length (1);
- // stop_spec [0] = CORBA::string_dup (CLIENT::instance ()->flowname ());
CLIENT::instance ()->streamctrl ()->stop (stop_spec,ACE_TRY_ENV);
ACE_CHECK_RETURN (-1);
CLIENT::instance ()->streamctrl ()->destroy (stop_spec,ACE_TRY_ENV);
- TAO_AV_CORE::instance ()->stop_run ();
}
else
return 0;
@@ -153,10 +68,33 @@ FTP_Client_Flow_Handler::handle_timeout (const ACE_Time_Value &/*tv*/,
if (result < 0)
ACE_ERROR_RETURN ((LM_ERROR,"send failed:%p","FTP_Client_Flow_Handler::send \n"),-1);
ACE_DEBUG ((LM_DEBUG,"handle_timeout::buffer sent succesfully\n"));
-
return 0;
}
+FTP_Client_StreamEndPoint::FTP_Client_StreamEndPoint (TAO_ORB_Manager *orb_manager)
+ :orb_manager_ (orb_manager)
+{
+
+}
+
+int
+FTP_Client_StreamEndPoint::get_callback (const char */*flowname*/,
+ TAO_AV_Callback *&callback)
+{
+ ACE_NEW_RETURN (this->callback_,
+ FTP_Client_Callback,
+ -1);
+ callback = this->callback_;
+ return 0;
+}
+
+int
+FTP_Client_StreamEndPoint::set_protocol_object (const char *flowname,
+ TAO_AV_Protocol_Object *object)
+{
+ this->callback_->set_protocol_object (object);
+ return 0;
+}
Endpoint_Reactive_Strategy::Endpoint_Reactive_Strategy (TAO_ORB_Manager *orb_manager,
Client *client)
@@ -180,7 +118,7 @@ int
Client::parse_args (int argc,
char **argv)
{
- ACE_Get_Opt opts (argc,argv,"f:a:p:s");
+ ACE_Get_Opt opts (argc,argv,"f:a:p:sdt");
this->use_sfp_ = 0;
char c;
@@ -200,6 +138,11 @@ Client::parse_args (int argc,
case 's':
this->use_sfp_ = 1;
break;
+ case 'd':
+ TAO_debug_level++;
+ break;
+ case 't':
+ this->test_ = 1;
default:
ACE_DEBUG ((LM_DEBUG,"Unknown option\n"));
return -1;
@@ -291,20 +234,21 @@ Client::init (int argc,char **argv)
ACE_DECLARE_NEW_CORBA_ENV;
ACE_TRY
{
+ // @@ Pass the ORB as an argument to the init.
TAO_AV_CORE::instance ()->init (argc,
argv,
ACE_TRY_ENV);
ACE_TRY_CHECK;
this->orb_manager_ = TAO_AV_CORE::instance ()->orb_manager ();
- this->orb_manager_->init_child_poa (this->argc_,
- this->argv_,
- "child_poa",
- ACE_TRY_ENV);
+ this->orb_manager_->init_child_poa (argc,
+ argv,
+ "child_poa",
+ ACE_TRY_ENV);
ACE_TRY_CHECK;
- this->parse_args (this->argc_, this->argv_);
+ this->parse_args (argc, argv);
// activate the client video mmdevice under the child poa.
ior = this->orb_manager_->activate (&this->client_mmdevice_,
- ACE_TRY_ENV);
+ ACE_TRY_ENV);
ACE_TRY_CHECK;
// Initialize the naming services
@@ -367,12 +311,26 @@ Client::run (void)
&addr);
flow_spec [0] = entry.entry_to_string ();
flow_spec.length (1);
+ ACE_High_Res_Timer timer;
+ ACE_Time_Value elapsed;
+ timer.start ();
CORBA::Boolean result =
this->streamctrl_.bind_devs (this->client_mmdevice_._this (ACE_TRY_ENV),
this->server_mmdevice_.in (),
the_qos.inout (),
flow_spec,
ACE_TRY_ENV);
+ timer.stop ();
+ timer.elapsed_time (elapsed);
+ elapsed.dump ();
+ // If we're supposed to do only bind_devs time calculation return.
+ if (this->test_)
+ {
+ AVStreams::flowSpec flow_spec;
+ this->streamctrl_.destroy (flow_spec,ACE_TRY_ENV);
+ ACE_TRY_CHECK;
+ return 0;
+ }
ACE_TRY_CHECK;
if (result == 0)
ACE_ERROR_RETURN ((LM_ERROR,"streamctrl::bind_devs failed\n"),-1);
@@ -405,7 +363,6 @@ main (int argc,
result = CLIENT::instance ()->run ();
if (result < 0)
ACE_ERROR_RETURN ((LM_ERROR,"client::run failed\n"),1);
-
}
#if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION)
diff --git a/TAO/orbsvcs/tests/AVStreams/Pluggable/ftp.h b/TAO/orbsvcs/tests/AVStreams/Pluggable/ftp.h
index 2a7383910c6..707ed7b8225 100644
--- a/TAO/orbsvcs/tests/AVStreams/Pluggable/ftp.h
+++ b/TAO/orbsvcs/tests/AVStreams/Pluggable/ftp.h
@@ -9,43 +9,26 @@
#include "orbsvcs/Naming/Naming_Utils.h"
#include "orbsvcs/AV/AVStreams_i.h"
#include "orbsvcs/AV/Endpoint_Strategy.h"
-#include "orbsvcs/AV/Transport.h"
+#include "orbsvcs/AV/FlowSpec_Entry.h"
#include "orbsvcs/AV/sfp.h"
#include "orbsvcs/AV/MCast.h"
+#include "ace/High_Res_Timer.h"
-class FTP_Client_Flow_Handler
- :public virtual ACE_Event_Handler
+class FTP_Client_Callback : public TAO_AV_Callback
{
public:
- FTP_Client_Flow_Handler (TAO_ORB_Manager *orb_manager,
- ACE_Time_Value &timeout);
- virtual int handle_timeout (const ACE_Time_Value &tv,
- const void *arg = 0);
- virtual int start (void);
- virtual int stop (void);
- virtual int set_protocol_object (TAO_AV_Protocol_Object *object);
+ FTP_Client_Callback (void);
+ virtual int handle_timeout (void *arg);
+ virtual int handle_destroy (void);
+ virtual void get_timeout (ACE_Time_Value *&tv,
+ void *&arg);
+ void set_protocol_object (TAO_AV_Protocol_Object *protocol_object) {this->protocol_object_ = protocol_object;}
protected:
- TAO_ORB_Manager *orb_manager_;
- long timer_id_;
int count_;
TAO_AV_Protocol_Object *protocol_object_;
- ACE_Time_Value timeout_;
-};
-
-class FTP_Client_Callback
- :public TAO_AV_Callback
-{
-public:
- FTP_Client_Callback (FTP_Client_Flow_Handler *handler);
- virtual int handle_start (void);
- virtual int handle_stop (void);
- virtual int handle_end_stream (void);
-protected:
- FTP_Client_Flow_Handler *handler_;
};
-class FTP_Client_StreamEndPoint
- :public TAO_Client_StreamEndPoint
+class FTP_Client_StreamEndPoint : public TAO_Client_StreamEndPoint
{
public:
FTP_Client_StreamEndPoint (TAO_ORB_Manager *orb_manager = 0);
@@ -57,15 +40,13 @@ public:
TAO_AV_Protocol_Object *object);
protected:
TAO_ORB_Manager *orb_manager_;
- FTP_Client_Flow_Handler *handler_;
FTP_Client_Callback *callback_;
};
typedef TAO_AV_Endpoint_Reactive_Strategy_A<FTP_Client_StreamEndPoint,TAO_VDev,AV_Null_MediaCtrl> ENDPOINT_STRATEGY;
class Client;
-class Endpoint_Reactive_Strategy
- : public ENDPOINT_STRATEGY
+class Endpoint_Reactive_Strategy : public ENDPOINT_STRATEGY
{
public:
Endpoint_Reactive_Strategy (TAO_ORB_Manager *orb_manager,
@@ -110,6 +91,7 @@ private:
char *protocol_;
char *flowname_;
int use_sfp_;
+ int test_;
};
typedef ACE_Singleton<Client,ACE_Null_Mutex> CLIENT;
diff --git a/TAO/orbsvcs/tests/AVStreams/Pluggable/server.cpp b/TAO/orbsvcs/tests/AVStreams/Pluggable/server.cpp
index 0651087d834..1d572be057b 100644
--- a/TAO/orbsvcs/tests/AVStreams/Pluggable/server.cpp
+++ b/TAO/orbsvcs/tests/AVStreams/Pluggable/server.cpp
@@ -27,7 +27,9 @@ FTP_Server_Callback::handle_stop (void)
}
int
-FTP_Server_Callback::receive_frame (ACE_Message_Block *frame)
+FTP_Server_Callback::receive_frame (ACE_Message_Block *frame,
+ TAO_AV_frame_info *,
+ const ACE_Addr &)
{
ACE_DEBUG ((LM_DEBUG,"FTP_Server_Callback::receive_frame\n"));
while (frame != 0)
@@ -44,7 +46,7 @@ FTP_Server_Callback::receive_frame (ACE_Message_Block *frame)
}
int
-FTP_Server_Callback::handle_end_stream (void)
+FTP_Server_Callback::handle_destroy (void)
{
ACE_DEBUG ((LM_DEBUG,"FTP_SFP_Callback::end_stream\n"));
TAO_AV_CORE::instance ()->stop_run ();
@@ -73,9 +75,9 @@ Server::init (int argc,
// Initialize the orb_manager
this->orb_manager_->init_child_poa (argc,
- argv,
- "child_poa",
- ACE_TRY_ENV);
+ argv,
+ "child_poa",
+ ACE_TRY_ENV);
ACE_TRY_CHECK;
CORBA::ORB_var orb =
diff --git a/TAO/orbsvcs/tests/AVStreams/Pluggable/server.h b/TAO/orbsvcs/tests/AVStreams/Pluggable/server.h
index 9329bf29e11..a836cc14e32 100644
--- a/TAO/orbsvcs/tests/AVStreams/Pluggable/server.h
+++ b/TAO/orbsvcs/tests/AVStreams/Pluggable/server.h
@@ -6,7 +6,7 @@
#include "orbsvcs/Naming/Naming_Utils.h"
#include "orbsvcs/AV/AVStreams_i.h"
#include "orbsvcs/AV/Endpoint_Strategy.h"
-#include "orbsvcs/AV/Transport.h"
+#include "orbsvcs/AV/FlowSpec_Entry.h"
#include "orbsvcs/AV/sfp.h"
#include "orbsvcs/AV/MCast.h"
#include "orbsvcs/AV/Policy.h"
@@ -25,8 +25,10 @@ class FTP_Server_Callback
{
public:
virtual int handle_stop (void);
- virtual int receive_frame (ACE_Message_Block *frame);
- virtual int handle_end_stream (void);
+ virtual int receive_frame (ACE_Message_Block *frame,
+ TAO_AV_frame_info *frame_info = 0,
+ const ACE_Addr &peer_address = ACE_Addr::sap_any);
+ virtual int handle_destroy (void);
};
class Server