summaryrefslogtreecommitdiff
path: root/TAO/orbsvcs/performance-tests/RTEvent/lib/RIR_Narrow.h
blob: 2e22caccb82d2b6172b1f6777fc60d72e4cb6be2 (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
/**
 * @file RIR_Narrow.h
 *
 * $Id$
 *
 * @author Jody Hagins <jody@atdesk.com>
 * @author Carlos O'Ryan <coryan@uci.edu>
 *
 */
#ifndef TAO_PERF_RTEC_RIR_NARROW_H
#define TAO_PERF_RTEC_RIR_NARROW_H

#include "tao/ORB.h"
#include "tao/Object.h"

/**
 * @class RIR_Narrow
 *
 * @brief Implement a helper method to narrow the results from
 *        resolve_initial_references.
 *
 */
template<class Interface>
class RIR_Narrow
{
public:
  typedef typename Interface::_ptr_type Interface_ptr;
  typedef typename Interface::_var_type Interface_var;

  static Interface_ptr resolve (CORBA::ORB_ptr orb,
                                const char *object_id);
};

#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
#include "RIR_Narrow.cpp"
#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */

#endif /* TAO_PERF_RTEC_RIR_NARROW_H */