Changes to attempt to silence bcc64x
[ACE_TAO.git] / TAO / orbsvcs / tests / AVStreams / Full_Profile / server.h
blob3025cc700171c80bef471492a0f97727d6c3e2eb
1 /* -*- C++ -*- */
2 #include "ace/Get_Opt.h"
3 #include "orbsvcs/Naming/Naming_Client.h"
4 #include "orbsvcs/AV/AVStreams_i.h"
5 #include "orbsvcs/AV/Flows_T.h"
6 #include "orbsvcs/AV/Endpoint_Strategy.h"
7 #include "orbsvcs/AV/Transport.h"
8 #include "orbsvcs/AV/sfp.h"
9 #include "orbsvcs/AV/MCast.h"
10 #include "orbsvcs/AV/Policy.h"
12 class Server;
14 class FTP_Server_Callback
15 :public TAO_AV_Callback
17 public:
18 FTP_Server_Callback ();
19 virtual int handle_stop ();
20 virtual int receive_frame (ACE_Message_Block *frame,
21 TAO_AV_frame_info *,
22 const ACE_Addr &);
23 virtual int handle_end_stream ();
26 class FTP_Server_FlowEndPoint
27 :public TAO_FlowConsumer
29 public:
30 FTP_Server_FlowEndPoint ();
31 int get_callback (const char *flowname,
32 TAO_AV_Callback *&callback);
35 class Server
37 public:
38 Server ();
39 int init (int argc,
40 ACE_TCHAR *argv[]);
41 int run ();
42 FILE *file ();
43 AVStreams::protocolSpec protocols ();
44 CORBA::ORB_ptr orb ();
45 void orb (CORBA::ORB_ptr orb_in);
46 PortableServer::POA_ptr poa ();
47 void poa (PortableServer::POA_ptr poa_in);
48 const char *format ();
49 protected:
50 int parse_args (int argc, ACE_TCHAR *argv[]);
51 TAO_Naming_Client my_naming_client_;
52 TAO_AV_Endpoint_Reactive_Strategy_B <TAO_StreamEndPoint_B,TAO_VDev,AV_Null_MediaCtrl> reactive_strategy_;
53 FILE *fp_;
54 char *protocol_;
55 CORBA::ORB_var orb_;
56 PortableServer::POA_ptr poa_;
57 TAO_StreamEndPoint_B *streamendpoint_b_;
58 AVStreams::StreamEndPoint_B_var sep_b_;
59 FTP_Server_FlowEndPoint *fep_b_;
60 AVStreams::FlowConsumer_var fep_b_obj_;
63 typedef ACE_Unmanaged_Singleton<Server,ACE_Null_Mutex> FTP_SERVER;