3 * @file Consumer_Client.h
5 * @author Pradeep Gore <pradeep@oomworks.com>
8 #ifndef TAO_Notify_CONSUMER_CLIENT_H
9 #define TAO_Notify_CONSUMER_CLIENT_H
11 #include /**/ "ace/pre.h"
13 #include "ORB_Objects.h"
15 #include "tao/RTCORBA/RTCORBA.h"
17 #include "ace/SString.h"
20 class TAO_Notify_Lanes_Consumer
;
23 * @class TAO_Notify_Lanes_Consumer_Client
27 class TAO_Notify_Lanes_Consumer_Client
: public ACE_Task_Base
31 TAO_Notify_Lanes_Consumer_Client (TAO_Notify_ORB_Objects
& orb_objects
);
34 ~TAO_Notify_Lanes_Consumer_Client ();
43 int parse_args (int argc
, ACE_TCHAR
*argv
[]);
45 /// The thread entry point.
49 /// Create an RT POA with a single lane at the specified RT Priority.
50 PortableServer::POA_ptr
create_rt_poa ();
53 TAO_Notify_ORB_Objects orb_objects_
;
55 /// Lock to serialize internal state.
56 TAO_SYNCH_MUTEX lock_
;
58 /// Count how many consumers are done
59 int consumer_done_count_
;
61 /// The Priority that we want the consumer lane to be at.
62 RTCORBA::Priority lane_priority_
;
65 TAO_Notify_Lanes_Consumer
* consumer_
;
67 /// The Type the Consumer should subscribe to.
68 ACE_CString event_type_
;
71 #include /**/ "ace/post.h"
72 #endif /* TAO_Notify_CONSUMER_CLIENT_H */