Changes to attempt to silence bcc64x
[ACE_TAO.git] / TAO / examples / CSD_Strategy / ThreadPool5 / Foo_i.h
blob1a940771368984526c93bd78844776c7bfae5d33
1 #ifndef FOO_I_H
2 #define FOO_I_H
4 #include "FooS.h"
5 #include "CallbackC.h"
6 #include "ace/SString.h"
8 class FooServantList;
11 class Foo_i : public virtual POA_Foo
13 public:
14 Foo_i(const char* servant_name, FooServantList* mgr);
15 virtual ~Foo_i();
17 virtual void op1();
19 virtual void op2(CORBA::Long value);
21 virtual CORBA::Long op3();
23 virtual void op4(CORBA::Long value);
25 virtual void op5();
27 virtual CORBA::Boolean op6 (
28 const char * user_name,
29 char *& message);
31 virtual void test_unbounded_string_arg (
32 const char * message);
34 virtual void test_bounded_string_arg (
35 const char * message);
37 virtual void test_fixed_array_arg (
38 const ::Fixed_Array message);
40 virtual void test_var_array_arg (
41 const ::Var_Array messages);
43 virtual void test_bounded_var_size_arg (
44 const ::Bounded_Var_Size & message);
46 virtual void test_unbounded_var_size_arg (
47 const ::Unbounded_Var_Size & message);
49 virtual void test_fixed_size_arg (
50 const ::TimeOfDay & t);
52 virtual void test_fixed_size_arg_two_way (
53 const ::TimeOfDay & t);
55 virtual void test_special_basic_arg (
56 ::CORBA::Boolean value);
58 virtual void test_objref_arg (
59 ::Callback_ptr cb);
61 virtual void callback_object (
62 ::Callback_ptr cb);
64 virtual void test_callback ();
66 virtual void done();
68 void active (bool flag);
70 bool active ();
72 private:
73 typedef ACE_Atomic_Op <TAO_SYNCH_MUTEX, CORBA::Long> AtomicLong;
74 typedef ACE_Atomic_Op <TAO_SYNCH_MUTEX, unsigned> AtomicUnsigned;
75 typedef ACE_Atomic_Op <TAO_SYNCH_MUTEX, bool> AtomicBool;
77 AtomicLong value_;
78 AtomicUnsigned count_op1_;
79 AtomicUnsigned count_op2_;
80 AtomicUnsigned count_op3_;
81 AtomicUnsigned count_op4_;
82 AtomicUnsigned count_op5_;
84 ACE_CString servant_name_;
85 FooServantList* mgr_;
86 AtomicBool active_;
87 Callback_var callback_;
91 #endif