Basic_SArguments.h

Go to the documentation of this file.
00001 // -*- C++ -*-
00002 
00003 //=============================================================================
00004 /**
00005  *  @file    Basic_SArguments.h
00006  *
00007  *  $Id: Basic_SArguments.h 73268 2006-06-27 06:23:42Z jwillemsen $
00008  *
00009  *  @authors Jeff Parsons and Carlos O'Ryan
00010  */
00011 //=============================================================================
00012 
00013 
00014 #ifndef TAO_BASIC_SARGUMENTS_H
00015 #define TAO_BASIC_SARGUMENTS_H
00016 
00017 #include /**/ "ace/pre.h"
00018 
00019 #include "tao/PortableServer/portableserver_export.h"
00020 
00021 #if !defined (ACE_LACKS_PRAGMA_ONCE)
00022 # pragma once
00023 #endif /* ACE_LACKS_PRAGMA_ONCE */
00024 
00025 #include "tao/PortableServer/Basic_SArgument_T.h"
00026 #include "tao/PortableServer/SArg_Traits_T.h"
00027 
00028 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
00029 
00030 namespace TAO
00031 {
00032   /**
00033    *
00034    * @brief Specialization for void return type.
00035    *
00036    */
00037   template<>
00038   class TAO_PortableServer_Export SArg_Traits<void>
00039   {
00040   public:
00041 
00042     typedef void        ret_type;
00043     typedef RetArgument ret_val;
00044 
00045   };
00046 
00047   /**
00048    *
00049    * @brief Specializations for basic skeleton arg types,
00050    *  except (w)char/boolean/octet.
00051    *
00052    */
00053 
00054   template<>
00055   class TAO_PortableServer_Export SArg_Traits<CORBA::Short>
00056     : public Basic_SArg_Traits_T<CORBA::Short, TAO::Any_Insert_Policy_Stream <CORBA::Short> >
00057   {
00058   };
00059 
00060   template<>
00061   class TAO_PortableServer_Export SArg_Traits<CORBA::Long>
00062     : public Basic_SArg_Traits_T<CORBA::Long, TAO::Any_Insert_Policy_Stream <CORBA::Long> >
00063   {
00064   };
00065 
00066   template<>
00067   class TAO_PortableServer_Export SArg_Traits<CORBA::UShort>
00068     : public Basic_SArg_Traits_T<CORBA::UShort, TAO::Any_Insert_Policy_Stream <CORBA::UShort> >
00069   {
00070   };
00071 
00072   template<>
00073   class TAO_PortableServer_Export SArg_Traits<CORBA::ULong>
00074     : public Basic_SArg_Traits_T<CORBA::ULong, TAO::Any_Insert_Policy_Stream <CORBA::ULong> >
00075   {
00076   };
00077 
00078   template<>
00079   class TAO_PortableServer_Export SArg_Traits<CORBA::Float>
00080     : public Basic_SArg_Traits_T<CORBA::Float, TAO::Any_Insert_Policy_Stream <CORBA::Float> >
00081   {
00082   };
00083 
00084   template<>
00085   class TAO_PortableServer_Export SArg_Traits<CORBA::Double>
00086     : public Basic_SArg_Traits_T<CORBA::Double, TAO::Any_Insert_Policy_Stream <CORBA::Double> >
00087   {
00088   };
00089 
00090   template<>
00091   class TAO_PortableServer_Export SArg_Traits<CORBA::LongLong>
00092     : public Basic_SArg_Traits_T<CORBA::LongLong, TAO::Any_Insert_Policy_Stream <CORBA::LongLong> >
00093   {
00094   };
00095 
00096   template<>
00097   class TAO_PortableServer_Export SArg_Traits<CORBA::ULongLong>
00098     : public Basic_SArg_Traits_T<CORBA::ULongLong, TAO::Any_Insert_Policy_Stream <CORBA::ULongLong> >
00099   {
00100   };
00101 
00102   template<>
00103   class TAO_PortableServer_Export SArg_Traits<CORBA::LongDouble>
00104     : public Basic_SArg_Traits_T<CORBA::LongDouble, TAO::Any_Insert_Policy_Stream <CORBA::LongDouble> >
00105   {
00106   };
00107 
00108 }
00109 
00110 TAO_END_VERSIONED_NAMESPACE_DECL
00111 
00112 #include /**/ "ace/post.h"
00113 
00114 #endif /* TAO_BASIC_SARGUMENTS_H */

Generated on Tue Feb 2 17:40:54 2010 for TAO_PortableServer by  doxygen 1.4.7