Revert "Use a variable on the stack to not have a temporary in the call"
[ACE_TAO.git] / TAO / tests / Param_Test / big_union.h
blobac05429bb2e47c14a7463ec19a354fc2926374f3
2 //=============================================================================
3 /**
4 * @file big_union.h
6 * Tests Anys
8 * @author Aniruddha Gokhale
9 */
10 //=============================================================================
13 #ifndef PARAM_TEST_BIG_UNION_H
14 #define PARAM_TEST_BIG_UNION_H
16 #include "param_testC.h"
18 // =*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*
19 // test Anys
20 // =*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*
21 class Test_Big_Union
23 public:
24 /// ctor
25 Test_Big_Union ();
27 /// dtor
28 ~Test_Big_Union ();
30 enum {
31 BIG_UNION_N_BRANCHES = 12
34 /// run the SII test
35 int run_sii_test (Param_Test_ptr objref);
37 /// return operation name
38 const char *opname () const;
40 /// set values for parameters
41 int init_parameters (Param_Test_ptr objref);
43 /// reset values for CORBA
44 int reset_parameters ();
46 /// check if results are valid
47 CORBA::Boolean check_validity ();
49 /// check if results are valid. This is used for DII results
50 CORBA::Boolean check_validity (CORBA::Request_ptr req);
52 /// print all the values
53 void print_values ();
55 /// invoke DII request with appropriate exception handling.
56 void dii_req_invoke (CORBA::Request *);
58 private:
59 /// operation name
60 char *opname_;
62 /// Coffee object used to test Big_Union with object.
63 Coffee_var cobj_;
65 /// test counter.
66 static size_t counter;
68 /// in parameter
69 Param_Test::Big_Union in_;
71 /// inout parameter
72 Param_Test::Big_Union inout_;
74 /// out parameter
75 Param_Test::Big_Union_var out_;
77 /// return value
78 Param_Test::Big_Union_var ret_;
81 #endif /* PARAM_TEST_BIG_UNION_H */