www.pudn.com > EasySoap++-0.6.1.rar > SOAPBase64.h
/*
* EasySoap++ - A C++ library for SOAP (Simple Object Access Protocol)
* Copyright (C) 2001 David Crowley; SciTegic, Inc.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Library General Public
* License as published by the Free Software Foundation; either
* version 2 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Library General Public License for more details.
*
* You should have received a copy of the GNU Library General Public
* License along with this library; if not, write to the Free
* Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*
* $Id: SOAPBase64.h,v 1.3 2002/05/20 16:56:11 jgorlick Exp $
*/
#if !defined(AFX_SOAPBASE64_H__8831A358_2EA1_11D5_B3F3_000000000000__INCLUDED_)
#define AFX_SOAPBASE64_H__8831A358_2EA1_11D5_B3F3_000000000000__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
BEGIN_EASYSOAP_NAMESPACE
//
// These classes are used to wrap arrays
// so we know how to encode/decode.
//
// Encode/Decode as base64
/**
*
*/
class EASYSOAP_EXPORT SOAPBase64Base
{
public:
static size_t EstimateSize(const SOAPString& str);
static void Encode(const char *bytes, size_t byteslen, SOAPString& str);
static void Decode(const SOAPString& str, char *bytes, size_t& byteslen);
protected:
SOAPBase64Base() {}
private:
SOAPBase64Base(const SOAPBase64Base&);
SOAPBase64Base& operator=(const SOAPBase64Base&);
};
//
// Encode/Decode as hex
/**
*
*/
class EASYSOAP_EXPORT SOAPHexBase
{
public:
static size_t EstimateSize(const SOAPString& str);
static void Encode(const char *bytes, size_t byteslen, SOAPString& str);
static void Decode(const SOAPString& str, char *bytes, size_t& byteslen);
protected:
SOAPHexBase() {}
private:
SOAPHexBase(const SOAPHexBase&);
SOAPHexBase& operator=(const SOAPHexBase&);
};
END_EASYSOAP_NAMESPACE
#endif // !defined(AFX_SOAPBASE64_H__8831A358_2EA1_11D5_B3F3_000000000000__INCLUDED_)