00001
00002
00003
00004
00005 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
00006
00007 template <typename StringType,
00008 typename TypeCodeType,
00009 class CaseArrayType,
00010 class RefCountPolicy>
00011 ACE_INLINE
00012 TAO::TypeCode::Union<StringType,
00013 TypeCodeType,
00014 CaseArrayType,
00015 RefCountPolicy>::Union (
00016 char const * id,
00017 char const * name,
00018 #if defined (__BORLANDC__) && (__BORLANDC__ < 0x572)
00019
00020
00021 TypeCodeType discriminant_type,
00022 #else
00023 TypeCodeType const & discriminant_type,
00024 #endif
00025 CaseArrayType const & cases,
00026 CORBA::ULong ncases,
00027 CORBA::Long default_index)
00028 : ::CORBA::TypeCode (CORBA::tk_union)
00029 , RefCountPolicy ()
00030 , base_attributes_ (id, name)
00031 , discriminant_type_ (discriminant_type)
00032 , default_index_ (default_index)
00033 , ncases_ (ncases)
00034 , cases_ (cases)
00035 {
00036 }
00037
00038 template <typename StringType,
00039 typename TypeCodeType,
00040 class CaseArrayType,
00041 class RefCountPolicy>
00042 ACE_INLINE
00043 TAO::TypeCode::Union<StringType,
00044 TypeCodeType,
00045 CaseArrayType,
00046 RefCountPolicy>::Union (
00047 CORBA::TCKind,
00048 char const * id)
00049 : ::CORBA::TypeCode (CORBA::tk_union)
00050 , RefCountPolicy ()
00051 , base_attributes_ (id)
00052 , discriminant_type_ (0)
00053 , default_index_ (-1)
00054 , ncases_ (0)
00055 , cases_ ()
00056 {
00057 }
00058
00059 TAO_END_VERSIONED_NAMESPACE_DECL