Merge pull request #2309 from mitza-oci/warnings
[ACE_TAO.git] / TAO / orbsvcs / tests / AVStreams / Pluggable_Flow_Protocol / TimeStamp.h
blob4e0b055a32fc3e3634dcb578cdf25d312dc75087
1 #ifndef TIMESTAMP_H
2 #define TIMESTAMP_H
3 #include /**/ "ace/pre.h"
5 #include "export.h"
7 #include "orbsvcs/AV/Protocol_Factory.h"
9 #include "ace/Dynamic_Service.h"
10 #include "ace/Service_Config.h"
13 class TAO_TS_Export TimeStamp_Protocol_Object : public TAO_AV_Protocol_Object
15 public:
16 TimeStamp_Protocol_Object (TAO_AV_Callback *callback,
17 TAO_AV_Transport *transport);
19 virtual int handle_input ();
21 /// send a data frame.
22 virtual int send_frame (ACE_Message_Block *frame,
23 TAO_AV_frame_info *frame_info = 0);
25 virtual int send_frame (iovec const* iov,
26 int iovcnt,
27 TAO_AV_frame_info *frame_info = 0);
29 virtual int send_frame (const char*buf,
30 size_t len);
32 /// end the stream.
33 virtual int destroy ();
35 private:
36 /// Pre-allocated memory to receive the data...
37 ACE_Message_Block* frame_;
40 class TAO_TS_Export TimeStamp_Protocol_Factory : public TAO_AV_Flow_Protocol_Factory
42 public:
43 /// Initialization hook.
44 TimeStamp_Protocol_Factory ();
45 virtual ~TimeStamp_Protocol_Factory ();
46 virtual int init (int argc, ACE_TCHAR *argv[]);
47 virtual int match_protocol (const char *flow_string);
48 // Note : Some platforms still don't support Covariant returns
49 virtual TAO_AV_Protocol_Object* make_protocol_object (TAO_FlowSpec_Entry *entry,
50 TAO_Base_StreamEndPoint *endpoint,
51 TAO_AV_Flow_Handler *handler,
52 TAO_AV_Transport *transport);
55 ACE_STATIC_SVC_DECLARE (TimeStamp_Protocol_Factory)
56 ACE_FACTORY_DECLARE (TAO_TS, TimeStamp_Protocol_Factory)
58 #include /**/ "ace/post.h"
59 #endif /*TIMESTAMP_H*/