summaryrefslogtreecommitdiff
path: root/TAO/Benchmark/Marshal_Test/VisiBroker/visi_marshal_server.h
blob: bfe9b1d9879f020d145d5aa19bb008259615a61b (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
// ============================================================================
//
// = LIBRARY
//    CORBA Marshal Visibroker Benchmark
// 
// = FILENAME
//    visi_marshal_server.h
//
// = AUTHOR
//    Aniruddha Gokhale
// 
// ============================================================================

#if !defined(_VISI_MARSHAL_SERVER_H_)
#define _VISI_MARSHAL_SERVER_H_

// benchmark library includes
#include "benchmark/marshal_options.h"
#include "benchmark/marshal_results.h"
#include "benchmark/marshal_proxy.h"

// implementation classes
#include "visi_marshal_impl.h"

// include VisiBroker specific include files
#include "marshalS.h"  // generated by IDL compiler
#include "pmcext.h"    // VisiBroker extensions

class Visi_Marshal_Server_Proxy : public CORBA_Marshal_Proxy
{
public:
  Visi_Marshal_Server_Proxy (void);
  // constructor

  ~Visi_Marshal_Server_Proxy (void);
  // destructor

  virtual int run (CORBA_Marshal_Proxy::OPTIONS &options,
		   CORBA_Marshal_Proxy::RESULTS &results);
  // do the actual work
private:
  CORBA::ORB_ptr orb_;
  // underlying orb;

  CORBA::BOA_ptr boa_;
  // underlying boa;

  Marshal_SSI_Impl *ssi_;
  Marshal_DSI_Impl *dsi_;
  // the implementation (SSI or DSI)
};


#if defined (__ACE_INLINE__)
#include "visi_marshal_server.i"
#endif /* __ACE_INLINE__ */

#endif