#include "ace/CDR_Size.h"
#include "ace/SString.h"
#include "ace/OS_Memory.h"
#include "ace/Truncate.h"
Go to the source code of this file.
Functions | |
ACE_RCSID (ace, CDR_Size,"$Id: CDR_Size.cpp 82559 2008-08-07 20:23:07Z parsons $") 1 ACE_CDR | |
ACE_CDR::Boolean | operator<< (ACE_SizeCDR &ss, const ACE_CString &x) |
ACE_RCSID | ( | ace | , | |
CDR_Size | , | |||
"$Id: CDR_Size.cpp 82559 2008-08-07 20:23:07Z parsons $" | ||||
) |
Definition at line 10 of file CDR_Size.cpp.
: CDR_Size.cpp 82559 2008-08-07 20:23:07Z parsons $") ACE_BEGIN_VERSIONED_NAMESPACE_DECL ACE_CDR::Boolean ACE_SizeCDR::write_wchar (ACE_CDR::WChar x) { // Note: translator framework is not supported. // if (ACE_OutputCDR::wchar_maxbytes () == 0) { errno = EACCES; return (this->good_bit_ = false); } if (static_cast<ACE_CDR::Short> (major_version_) == 1 && static_cast<ACE_CDR::Short> (minor_version_) == 2) { ACE_CDR::Octet len = static_cast<ACE_CDR::Octet> (ACE_OutputCDR::wchar_maxbytes ()); if (this->write_1 (&len)) { if (ACE_OutputCDR::wchar_maxbytes () == sizeof(ACE_CDR::WChar)) { return this->write_octet_array ( reinterpret_cast<const ACE_CDR::Octet*> (&x), static_cast<ACE_CDR::ULong> (len)); } else { if (ACE_OutputCDR::wchar_maxbytes () == 2) { ACE_CDR::Short sx = static_cast<ACE_CDR::Short> (x); return this->write_octet_array ( reinterpret_cast<const ACE_CDR::Octet*> (&sx), static_cast<ACE_CDR::ULong> (len)); } else { ACE_CDR::Octet ox = static_cast<ACE_CDR::Octet> (x); return this->write_octet_array ( reinterpret_cast<const ACE_CDR::Octet*> (&ox), static_cast<ACE_CDR::ULong> (len)); } } } } else if (static_cast<ACE_CDR::Short> (minor_version_) == 0) { // wchar is not allowed with GIOP 1.0. errno = EINVAL; return (this->good_bit_ = false); } if (ACE_OutputCDR::wchar_maxbytes () == sizeof (ACE_CDR::WChar)) { const void *temp = &x; return this->write_4 (reinterpret_cast<const ACE_CDR::ULong *> (temp)); } else if (ACE_OutputCDR::wchar_maxbytes () == 2) { ACE_CDR::Short sx = static_cast<ACE_CDR::Short> (x); return this->write_2 (reinterpret_cast<const ACE_CDR::UShort *> (&sx)); } ACE_CDR::Octet ox = static_cast<ACE_CDR::Octet> (x); return this->write_1 (reinterpret_cast<const ACE_CDR::Octet *> (&ox)); }
ACE_CDR::Boolean operator<< | ( | ACE_SizeCDR & | ss, | |
const ACE_CString & | x | |||
) |
Definition at line 256 of file CDR_Size.cpp.
{ ss.write_string (x); return ss.good_bit (); }