Special_Basic_SArguments.h

Go to the documentation of this file.
00001 // -*- C++ -*-
00002 
00003 //=============================================================================
00004 /**
00005  *  @file    Special_Basic_SArguments.h
00006  *
00007  *  $Id: Special_Basic_SArguments.h 73268 2006-06-27 06:23:42Z jwillemsen $
00008  *
00009  *  @author Jeff Parsons
00010  *  @author Carlos O'Ryan
00011  */
00012 //=============================================================================
00013 
00014 
00015 #ifndef TAO_SPECIAL_BASIC_SARGUMENTS_H
00016 #define TAO_SPECIAL_BASIC_SARGUMENTS_H
00017 
00018 #include /**/ "ace/pre.h"
00019 
00020 #include "tao/PortableServer/portableserver_export.h"
00021 
00022 #if !defined (ACE_LACKS_PRAGMA_ONCE)
00023 # pragma once
00024 #endif /* ACE_LACKS_PRAGMA_ONCE */
00025 
00026 #include "tao/PortableServer/Special_Basic_SArgument_T.h"
00027 #include "tao/PortableServer/SArg_Traits_T.h"
00028 
00029 #include "ace/CDR_Stream.h"
00030 
00031 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
00032 
00033 namespace TAO
00034 {
00035   /**
00036    *
00037    * @brief Specializations for (w)char, octet and boolean.
00038    *
00039    */
00040 
00041   template<>
00042   class TAO_PortableServer_Export SArg_Traits<ACE_InputCDR::to_char>
00043     : public Special_Basic_SArg_Traits_T<CORBA::Char,
00044                                          ACE_InputCDR::to_char,
00045                                          ACE_OutputCDR::from_char,
00046                                          TAO::Any_Insert_Policy_Stream <ACE_OutputCDR::from_char> >
00047   {
00048   };
00049 
00050   template<>
00051   class TAO_PortableServer_Export SArg_Traits<ACE_InputCDR::to_wchar>
00052     : public Special_Basic_SArg_Traits_T<CORBA::WChar,
00053                                          ACE_InputCDR::to_wchar,
00054                                          ACE_OutputCDR::from_wchar,
00055                                          TAO::Any_Insert_Policy_Stream <ACE_OutputCDR::from_wchar> >
00056   {
00057   };
00058 
00059   template<>
00060   class TAO_PortableServer_Export SArg_Traits<ACE_InputCDR::to_octet>
00061     : public Special_Basic_SArg_Traits_T<CORBA::Octet,
00062                                          ACE_InputCDR::to_octet,
00063                                          ACE_OutputCDR::from_octet,
00064                                          TAO::Any_Insert_Policy_Stream <ACE_OutputCDR::from_octet> >
00065   {
00066   };
00067 
00068   template<>
00069   class TAO_PortableServer_Export SArg_Traits<ACE_InputCDR::to_boolean>
00070     : public Special_Basic_SArg_Traits_T<CORBA::Boolean,
00071                                          ACE_InputCDR::to_boolean,
00072                                          ACE_OutputCDR::from_boolean,
00073                                          TAO::Any_Insert_Policy_Stream <ACE_OutputCDR::from_boolean> >
00074 
00075   {
00076   };
00077 }
00078 
00079 TAO_END_VERSIONED_NAMESPACE_DECL
00080 
00081 #include /**/ "ace/post.h"
00082 
00083 #endif /* TAO_SPECIAL_BASIC_SARGUMENTS_H */

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