4 * @author Carlos O'Ryan <coryan@uci.edu>
7 #ifndef TAO_PERF_RTEC_ORB_HOLDER_H
8 #define TAO_PERF_RTEC_ORB_HOLDER_H
10 #include "rtec_perf_export.h"
13 #if !defined (ACE_LACKS_PRAGMA_ONCE)
15 #endif /* ACE_LACKS_PRAGMA_ONCE */
20 * @brief Implement a helper class to initialize and destroy an ORB.
22 class TAO_RTEC_Perf_Export ORB_Holder
26 ORB_Holder (int &argc
, ACE_TCHAR
*argv
[],
27 const char *orb_id
= 0);
31 * @todo This method could benefit from the error logging described
36 /// Access the underlying ORB, using the canonical CORBA memory
38 CORBA::ORB_ptr
orb ();
40 /// Implicit conversion to CORBA::ORB_ptr
42 * It behaves as the .in() methods in the T_var classes.
44 operator CORBA::ORB_ptr () const;
46 /// Smart pointer behavior
47 CORBA::ORB_ptr
operator-> () const;
54 #if defined(__ACE_INLINE__)
55 #include "ORB_Holder.inl"
56 #endif /* __ACE_INLINE__ */
58 #endif /* TAO_PERF_RTEC_ORB_HOLDER_H */