// Basic_Arguments.cpp,v 1.2 2003/10/28 18:29:12 bala Exp

#include "tao/Basic_Arguments.h"

#if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION) || \
    defined (ACE_HAS_TEMPLATE_INSTANTIATION_PRAGMA)
// Inclusions only if explicit templates are enabled.
#include "Basic_Types.h"
#include "CDR.h"
#endif /*ACE_HAS_TEMPLATE_INSTANTIATION ||
         ACE_HAS_TEMPLATE_INSTANTIATION_PRAGMA*/


ACE_RCSID (tao,
           Basic_Arguments,
           "Basic_Arguments.cpp,v 1.2 2003/10/28 18:29:12 bala Exp")

#if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION)

template class TAO::Arg_Traits<void>;
template class TAO::Arg_Traits<CORBA::Short>;
template class TAO::Arg_Traits<CORBA::Long>;
template class TAO::Arg_Traits<CORBA::UShort>;
template class TAO::Arg_Traits<CORBA::ULong>;
template class TAO::Arg_Traits<CORBA::Float>;
template class TAO::Arg_Traits<CORBA::Double>;
template class TAO::Arg_Traits<CORBA::LongLong>;
template class TAO::Arg_Traits<CORBA::ULongLong>;
template class TAO::Arg_Traits<CORBA::LongDouble>;

template class TAO::Basic_Arg_Traits_T<CORBA::Short>;
template class TAO::Basic_Arg_Traits_T<CORBA::Long>;
template class TAO::Basic_Arg_Traits_T<CORBA::UShort>;
template class TAO::Basic_Arg_Traits_T<CORBA::ULong>;
template class TAO::Basic_Arg_Traits_T<CORBA::Float>;
template class TAO::Basic_Arg_Traits_T<CORBA::Double>;
template class TAO::Basic_Arg_Traits_T<CORBA::LongLong>;
template class TAO::Basic_Arg_Traits_T<CORBA::ULongLong>;
template class TAO::Basic_Arg_Traits_T<CORBA::LongDouble>;

template class TAO::In_Basic_Argument_T<CORBA::Short>;
template class TAO::Inout_Basic_Argument_T<CORBA::Short>;
template class TAO::Out_Basic_Argument_T<CORBA::Short>;
template class TAO::Ret_Basic_Argument_T<CORBA::Short>;

template class TAO::In_Basic_Argument_T<CORBA::Long>;
template class TAO::Inout_Basic_Argument_T<CORBA::Long>;
template class TAO::Out_Basic_Argument_T<CORBA::Long>;
template class TAO::Ret_Basic_Argument_T<CORBA::Long>;

template class TAO::In_Basic_Argument_T<CORBA::UShort>;
template class TAO::Inout_Basic_Argument_T<CORBA::UShort>;
template class TAO::Out_Basic_Argument_T<CORBA::UShort>;
template class TAO::Ret_Basic_Argument_T<CORBA::UShort>;

template class TAO::In_Basic_Argument_T<CORBA::ULong>;
template class TAO::Inout_Basic_Argument_T<CORBA::ULong>;
template class TAO::Out_Basic_Argument_T<CORBA::ULong>;
template class TAO::Ret_Basic_Argument_T<CORBA::ULong>;

template class TAO::In_Basic_Argument_T<CORBA::Float>;
template class TAO::Inout_Basic_Argument_T<CORBA::Float>;
template class TAO::Out_Basic_Argument_T<CORBA::Float>;
template class TAO::Ret_Basic_Argument_T<CORBA::Float>;

template class TAO::In_Basic_Argument_T<CORBA::Double>;
template class TAO::Inout_Basic_Argument_T<CORBA::Double>;
template class TAO::Out_Basic_Argument_T<CORBA::Double>;
template class TAO::Ret_Basic_Argument_T<CORBA::Double>;

template class TAO::In_Basic_Argument_T<CORBA::LongLong>;
template class TAO::Inout_Basic_Argument_T<CORBA::LongLong>;
template class TAO::Out_Basic_Argument_T<CORBA::LongLong>;
template class TAO::Ret_Basic_Argument_T<CORBA::LongLong>;

template class TAO::In_Basic_Argument_T<CORBA::ULongLong>;
template class TAO::Inout_Basic_Argument_T<CORBA::ULongLong>;
template class TAO::Out_Basic_Argument_T<CORBA::ULongLong>;
template class TAO::Ret_Basic_Argument_T<CORBA::ULongLong>;

template class TAO::In_Basic_Argument_T<CORBA::LongDouble>;
template class TAO::Inout_Basic_Argument_T<CORBA::LongDouble>;
template class TAO::Out_Basic_Argument_T<CORBA::LongDouble>;
template class TAO::Ret_Basic_Argument_T<CORBA::LongDouble>;


#elif defined (ACE_HAS_TEMPLATE_INSTANTIATION_PRAGMA)

#pragma instantiate TAO::Arg_Traits_T<void>
#pragma instantiate TAO::Arg_Traits_T<CORBA::Short>
#pragma instantiate TAO::Arg_Traits_T<CORBA::Long>
#pragma instantiate TAO::Arg_Traits_T<CORBA::UShort>
#pragma instantiate TAO::Arg_Traits_T<CORBA::ULong>
#pragma instantiate TAO::Arg_Traits_T<CORBA::Float>
#pragma instantiate TAO::Arg_Traits_T<CORBA::Double>
#pragma instantiate TAO::Arg_Traits_T<CORBA::LongLong>
#pragma instantiate TAO::Arg_Traits_T<CORBA::ULongLong>
#pragma instantiate TAO::Arg_Traits_T<CORBA::LongDouble>

#pragma instantiate TAO::Basic_Arg_Traits_T<CORBA::Short>
#pragma instantiate TAO::Basic_Arg_Traits_T<CORBA::Long>
#pragma instantiate TAO::Basic_Arg_Traits_T<CORBA::UShort>
#pragma instantiate TAO::Basic_Arg_Traits_T<CORBA::ULong>
#pragma instantiate TAO::Basic_Arg_Traits_T<CORBA::Float>
#pragma instantiate TAO::Basic_Arg_Traits_T<CORBA::Double>
#pragma instantiate TAO::Basic_Arg_Traits_T<CORBA::LongLong>
#pragma instantiate TAO::Basic_Arg_Traits_T<CORBA::ULongLong>
#pragma instantiate TAO::Basic_Arg_Traits_T<CORBA::LongDouble>

#pragma instantiate TAO::In_Basic_Argument_T<CORBA::Short>
#pragma instantiate TAO::Inout_Basic_Argument_T<CORBA::Short>
#pragma instantiate TAO::Out_Basic_Argument_T<CORBA::Short>
#pragma instantiate TAO::Ret_Basic_Argument_T<CORBA::Short>

#pragma instantiate TAO::In_Basic_Argument_T<CORBA::Long>
#pragma instantiate TAO::Inout_Basic_Argument_T<CORBA::Long>
#pragma instantiate TAO::Out_Basic_Argument_T<CORBA::Long>
#pragma instantiate TAO::Ret_Basic_Argument_T<CORBA::Long>

#pragma instantiate TAO::In_Basic_Argument_T<CORBA::UShort>
#pragma instantiate TAO::Inout_Basic_Argument_T<CORBA::UShort>
#pragma instantiate TAO::Out_Basic_Argument_T<CORBA::UShort>
#pragma instantiate TAO::Ret_Basic_Argument_T<CORBA::UShort>

#pragma instantiate TAO::In_Basic_Argument_T<CORBA::ULong>
#pragma instantiate TAO::Inout_Basic_Argument_T<CORBA::ULong>
#pragma instantiate TAO::Out_Basic_Argument_T<CORBA::ULong>
#pragma instantiate TAO::Ret_Basic_Argument_T<CORBA::ULong>

#pragma instantiate TAO::In_Basic_Argument_T<CORBA::Float>
#pragma instantiate TAO::Inout_Basic_Argument_T<CORBA::Float>
#pragma instantiate TAO::Out_Basic_Argument_T<CORBA::Float>
#pragma instantiate TAO::Ret_Basic_Argument_T<CORBA::Float>

#pragma instantiate TAO::In_Basic_Argument_T<CORBA::Double>
#pragma instantiate TAO::Inout_Basic_Argument_T<CORBA::Double>
#pragma instantiate TAO::Out_Basic_Argument_T<CORBA::Double>
#pragma instantiate TAO::Ret_Basic_Argument_T<CORBA::Double>

#pragma instantiate TAO::In_Basic_Argument_T<CORBA::LongLong>
#pragma instantiate TAO::Inout_Basic_Argument_T<CORBA::LongLong>
#pragma instantiate TAO::Out_Basic_Argument_T<CORBA::LongLong>
#pragma instantiate TAO::Ret_Basic_Argument_T<CORBA::LongLong>

#pragma instantiate TAO::In_Basic_Argument_T<CORBA::ULongLong>
#pragma instantiate TAO::Inout_Basic_Argument_T<CORBA::ULongLong>
#pragma instantiate TAO::Out_Basic_Argument_T<CORBA::ULongLong>
#pragma instantiate TAO::Ret_Basic_Argument_T<CORBA::ULongLong>

#pragma instantiate TAO::In_Basic_Argument_T<CORBA::LongDouble>
#pragma instantiate TAO::Inout_Basic_Argument_T<CORBA::LongDouble>
#pragma instantiate TAO::Out_Basic_Argument_T<CORBA::LongDouble>
#pragma instantiate TAO::Ret_Basic_Argument_T<CORBA::LongDouble>

#endif /* ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION */
