• Classes
  • Modules
  • Namespaces
  • Files
  • Related Pages
  • File List
  • File Members

bulkDataDistributerStreamCb.h

Go to the documentation of this file.
00001 #ifndef _BULKDATA_DISTRIBUTER_STREAM_CB_H
00002 #define _BULKDATA_DISTRIBUTER_STREAM_CB_H
00003 
00004 #ifndef __cplusplus
00005 #error This is a C++ include file and cannot be used from plain C
00006 #endif
00007 
00008 #include "orbsvcs/AV/AVStreams_i.h"
00009 #include "orbsvcs/AV/Endpoint_Strategy.h"
00010 #include "orbsvcs/AV/Protocol_Factory.h"
00011 #include "orbsvcs/AV/Flows_T.h"
00012 #include "orbsvcs/AV/Transport.h"
00013 #include "orbsvcs/AV/Policy.h"
00014 
00015 #include <baci.h>
00016 
00017 #include "ACSBulkDataError.h"
00018 
00019 #include <iostream>
00020 
00021 #include "bulkDataDistributerImpl.h"
00022 
00023 class BulkDataDistributerStreamCb : public TAO_AV_Callback
00024 {
00025 
00026   public:
00027 
00028     BulkDataDistributerStreamCb();
00029 
00030     BulkDataDistributerStreamCb(TAO_StreamCtrl * stream_p);
00031 
00032     ~BulkDataDistributerStreamCb();
00033 
00034     virtual int handle_start(void);
00035 
00036     virtual int handle_stop (void);
00037 
00038     virtual int handle_destroy (void);
00039 
00040     virtual int receive_frame (ACE_Message_Block *frame_p, TAO_AV_frame_info *frame_info, const ACE_Addr &);
00041 
00042     virtual void setFlowname (const char*);
00043 
00044     virtual void setDistributerImpl(BulkDataDistributerImpl<BulkDataDistributerStreamCb> *distr_p);
00045 
00046     ACE_HANDLE getHandle();
00047 
00048     CORBA::Boolean isFepAlive()
00049         {
00050             return isFepAlive_m;
00051         }
00052 
00053   protected:
00054 
00055     ACE_CString flowname_m;
00056 
00057     CORBA::ULong flowNumber_m;
00058 
00059   private:
00060 
00061     BulkDataDistributerImpl<BulkDataDistributerStreamCb> *distr_m;
00062 
00063     CORBA::Boolean isFepAlive_m;
00064 };
00065 
00066 
00067 #endif 

Generated on Thu Jan 12 2012 23:13:50 for ACS-10.0 C++ API by  doxygen 1.7.0