From 732a14fb8b9d82537a05526890b8918bee6e33e7 Mon Sep 17 00:00:00 2001 From: naga Date: Mon, 9 Aug 1999 20:31:25 +0000 Subject: *** empty log message *** --- TAO/ChangeLog-99c | 52 +- TAO/orbsvcs/orbsvcs/Makefile | 585 +++++++++++---------- TAO/orbsvcs/tests/AVStreams/Full_Profile/ftp.cpp | 138 ++--- TAO/orbsvcs/tests/AVStreams/Full_Profile/ftp.h | 49 +- .../tests/AVStreams/Full_Profile/server.cpp | 48 +- TAO/orbsvcs/tests/AVStreams/Full_Profile/server.h | 31 +- TAO/orbsvcs/tests/AVStreams/Multicast/ftp.cpp | 245 +++++---- TAO/orbsvcs/tests/AVStreams/Multicast/ftp.h | 54 +- TAO/orbsvcs/tests/AVStreams/Multicast/server.cpp | 3 +- TAO/orbsvcs/tests/AVStreams/Multicast/server.h | 3 +- .../tests/AVStreams/Multicast_Full_Profile/ftp.cpp | 273 ++++++---- .../tests/AVStreams/Multicast_Full_Profile/ftp.h | 95 ++-- .../AVStreams/Multicast_Full_Profile/server.cpp | 42 +- .../AVStreams/Multicast_Full_Profile/server.h | 33 +- TAO/orbsvcs/tests/AVStreams/Pluggable/Makefile | 2 +- TAO/orbsvcs/tests/AVStreams/Pluggable/ftp.cpp | 179 +++---- TAO/orbsvcs/tests/AVStreams/Pluggable/ftp.h | 42 +- TAO/orbsvcs/tests/AVStreams/Pluggable/server.cpp | 12 +- TAO/orbsvcs/tests/AVStreams/Pluggable/server.h | 8 +- 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 - - * 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 + * 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 + + * 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 * 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 ; template class TAO_AV_Endpoint_Reactive_Strategy_A; template class TAO_AV_Endpoint_Reactive_Strategy; +template class TAO_FDev ; #elif defined (ACE_HAS_TEMPLATE_INSTANTIATION_PRAGMA) #pragma instantiate ACE_Singleton #pragma instantiate TAO_AV_Endpoint_Reactive_Strategy_A #pragma instantiate TAO_AV_Endpoint_Reactive_Strategy +#pragma instantiate TAO_FDev #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 ENDPOINT_STRATEGY; +typedef TAO_FDev 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 ; template class TAO_AV_Endpoint_Reactive_Strategy_B ; template class TAO_AV_Endpoint_Reactive_Strategy ; +template class TAO_FDev ; #elif defined (ACE_HAS_TEMPLATE_INSTANTIATION_PRAGMA) #pragma instantiate ACE_Singleton #pragma instantiate TAO_AV_Endpoint_Reactive_Strategy_B #pragma instantiate TAO_AV_Endpoint_Reactive_Strategy +#pragma instantiate TAO_FDev #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 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 ENDPOINT_STRATEGY; +typedef TAO_FDev 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 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 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; 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 -- cgit v1.2.1