00001
#ifndef _BULKDATA_FLOW_CONSUMER_H
00002
#define _BULKDATA_FLOW_CONSUMER_H
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00034
namespace AcsBulkdata
00035 {
00055
template<
class TReceiverCallback>
00056 class BulkDataFlowConsumer :
public virtual TAO_FlowConsumer
00057 {
00058
public:
00059
00068
BulkDataFlowConsumer(
const char *flowname, AVStreams::protocolSpec prot,
const char *format);
00069
00073
virtual ~BulkDataFlowConsumer();
00074
00086
virtual int get_callback (
const char *flowname, TAO_AV_Callback *&callback);
00087
00097
virtual int set_protocol_object(
const char *flowname, TAO_AV_Protocol_Object *object);
00098
00106
virtual TAO_AV_Protocol_Object *
getProtocolObject();
00107
00108
virtual TReceiverCallback *
getBulkDataCallback();
00109
00110
virtual void set_flow_handler (
const char *flowname,
00111 TAO_AV_Flow_Handler *handler);
00112
00113
virtual TAO_AV_Flow_Handler *
getFlowHandler();
00114
00115
private:
00116
00117 TReceiverCallback *
cb_p;
00118
00119 ACE_CString
flowname_m;
00120
00121 TAO_AV_Protocol_Object *
protObj_p;
00122
00123 TAO_AV_Flow_Handler *
handler_p;
00124 };
00125
00126
00127 }
00128
00129
00130
#include "bulkDataFlowConsumer.i"
00131
00132
#endif