summaryrefslogtreecommitdiff
path: root/TAO/tests/OBV/Supports/Supports_Test_impl.h
blob: 9d0932b1d873831d05def9d4236d64275932f6ea (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
// $Id$

#ifndef TAO_SUPPORTS_TEST_IMPL_H
#define TAO_SUPPORTS_TEST_IMPL_H

#include "Supports_TestS.h"
#include "ace/Get_Opt.h"

/**
 * \class node_impl
 *
 *
 */
class node_impl :
  public virtual OBV_Supports_Test::Node,
  public virtual CORBA::DefaultValueRefCountBase
{

public:

  node_impl (void);

  node_impl (const char * name);

  virtual void add_edge (Supports_Test::Node * neighbor ACE_ENV_ARG_DECL)
    ACE_THROW_SPEC ((CORBA::SystemException));

  virtual void remove_edge (Supports_Test::Node * neighbor ACE_ENV_ARG_DECL)
    ACE_THROW_SPEC ((CORBA::SystemException));

  void change_weight (CORBA::Long new_weight ACE_ENV_ARG_DECL)
    ACE_THROW_SPEC ((CORBA::SystemException));

  void print (ACE_ENV_SINGLE_ARG_DECL)
    ACE_THROW_SPEC ((CORBA::SystemException));

};

class node_init_impl : public Supports_Test::Node_init
{

 public:

  virtual Supports_Test::Node * create (void)
    ACE_THROW_SPEC ((CORBA::SystemException));

  virtual CORBA::ValueBase * create_for_unmarshal (void);

};


class vt_graph_impl :
  public virtual OBV_Supports_Test::vt_graph,
  public virtual POA_Supports_Test::vt_graph,
  public virtual CORBA::DefaultValueRefCountBase
{

 public:

  vt_graph_impl (void);

  vt_graph_impl (int num_nodes
                 ACE_ENV_ARG_DECL);

  virtual CORBA::Long size (ACE_ENV_SINGLE_ARG_DECL)
    ACE_THROW_SPEC ((CORBA::SystemException));

  virtual void add_node (const char * name
                         ACE_ENV_ARG_DECL)
    ACE_THROW_SPEC ((CORBA::SystemException));

  virtual void print (ACE_ENV_SINGLE_ARG_DECL)
    ACE_THROW_SPEC ((CORBA::SystemException));

};

class vt_graph_init_impl :
  public Supports_Test::vt_graph_init
{

 public:

  virtual Supports_Test::vt_graph * create (void)
    ACE_THROW_SPEC ((CORBA::SystemException));

  virtual CORBA::ValueBase * create_for_unmarshal (void);

};

class test_impl :
  public virtual POA_Supports_Test::test
{

 public:

  test_impl (CORBA::ORB_ptr orb);

  virtual ~test_impl (void);

  virtual void pass_obj_graph_in (Supports_Test::graph * graph_param
				  ACE_ENV_ARG_DECL)
    ACE_THROW_SPEC ((CORBA::SystemException));

  virtual void pass_vt_graph_in (Supports_Test::vt_graph * vt_graph_param
				 ACE_ENV_ARG_DECL)
    ACE_THROW_SPEC ((CORBA::SystemException));

  virtual void pass_obj_graph_out (Supports_Test::graph_out graph_param
				   ACE_ENV_ARG_DECL)
    ACE_THROW_SPEC ((CORBA::SystemException));

  virtual void pass_vt_graph_out (Supports_Test::vt_graph_out vt_graph_param
				  ACE_ENV_ARG_DECL)
    ACE_THROW_SPEC ((CORBA::SystemException));

  virtual void pass_obj_graph_inout (Supports_Test::graph * &graph_param
				     ACE_ENV_ARG_DECL)
    ACE_THROW_SPEC ((CORBA::SystemException));

  virtual void pass_vt_graph_inout (Supports_Test::vt_graph * &vt_graph_param
				    ACE_ENV_ARG_DECL)
    ACE_THROW_SPEC ((CORBA::SystemException));

  virtual void start (ACE_ENV_SINGLE_ARG_DECL)
    ACE_THROW_SPEC ((CORBA::SystemException));

  virtual void finish (ACE_ENV_SINGLE_ARG_DECL)
    ACE_THROW_SPEC ((CORBA::SystemException));

 private:

  CORBA::ORB_var orb_;

};

#endif /* TAO_SUPPORTS_TEST_IMPL_H */