soap_text.hpp
上传用户:yhdzpy8989
上传日期:2007-06-13
资源大小:13604k
文件大小:7k
源码类别:

生物技术

开发平台:

C/C++

  1. /*
  2.  * ===========================================================================
  3.  * PRODUCTION $Log: soap_text.hpp,v $
  4.  * PRODUCTION Revision 1000.0  2003/10/29 17:39:39  gouriano
  5.  * PRODUCTION PRODUCTION: IMPORTED [ORIGINAL] Dev-tree R1.1
  6.  * PRODUCTION
  7.  * ===========================================================================
  8.  */
  9. /* $Id: soap_text.hpp,v 1000.0 2003/10/29 17:39:39 gouriano Exp $
  10.  * ===========================================================================
  11.  *
  12.  *                            PUBLIC DOMAIN NOTICE
  13.  *               National Center for Biotechnology Information
  14.  *
  15.  *  This software/database is a "United States Government Work" under the
  16.  *  terms of the United States Copyright Act.  It was written as part of
  17.  *  the author's official duties as a United States Government employee and
  18.  *  thus cannot be copyrighted.  This software/database is freely available
  19.  *  to the public for use. The National Library of Medicine and the U.S.
  20.  *  Government have not placed any restriction on its use or reproduction.
  21.  *
  22.  *  Although all reasonable efforts have been taken to ensure the accuracy
  23.  *  and reliability of the software and data, the NLM and the U.S.
  24.  *  Government do not and cannot warrant the performance or results that
  25.  *  may be obtained by using this software or data. The NLM and the U.S.
  26.  *  Government disclaim all warranties, express or implied, including
  27.  *  warranties of performance, merchantability or fitness for any particular
  28.  *  purpose.
  29.  *
  30.  *  Please cite the author in any work or product based on this material.
  31.  *
  32.  * ===========================================================================
  33.  *
  34.  * Author: Andrei Gourianov
  35.  *
  36.  * File Description:
  37.  *   SOAP Text object
  38.  *
  39.  * ===========================================================================
  40.  */
  41. #ifndef SOAP_TEXT_HPP
  42. #define SOAP_TEXT_HPP
  43. // standard includes
  44. #include <serial/serialbase.hpp>
  45. // generated includes
  46. #include <string>
  47. BEGIN_NCBI_SCOPE
  48. // generated classes
  49. class CSoapText : public CSerialObject
  50. {
  51.     typedef CSerialObject Tparent;
  52. public:
  53.     // constructor
  54.     CSoapText(void);
  55.     CSoapText(const std::string& value);
  56.     // destructor
  57.     virtual ~CSoapText(void);
  58.     // type info
  59.     DECLARE_INTERNAL_TYPE_INFO();
  60.     class C_Attlist : public CSerialObject
  61.     {
  62.         typedef CSerialObject Tparent;
  63.     public:
  64.         // constructor
  65.         C_Attlist(void);
  66.         // destructor
  67.         ~C_Attlist(void);
  68.     
  69.         // type info
  70.         DECLARE_INTERNAL_TYPE_INFO();
  71.     
  72.         // types
  73.         typedef std::string TXmllang;
  74.     
  75.         // getters
  76.         // setters
  77.     
  78.         // mandatory
  79.         // typedef std::string TXmllang
  80.         bool IsSetXmllang(void) const;
  81.         bool CanGetXmllang(void) const;
  82.         void ResetXmllang(void);
  83.         const TXmllang& GetXmllang(void) const;
  84.         void SetXmllang(const TXmllang& value);
  85.         TXmllang& SetXmllang(void);
  86.     
  87.         // reset whole object
  88.         void Reset(void);
  89.     
  90.     
  91.     private:
  92.         // Prohibit copy constructor and assignment operator
  93.         C_Attlist(const C_Attlist&);
  94.         C_Attlist& operator=(const C_Attlist&);
  95.     
  96.         // data
  97.         Uint4 m_set_State[1];
  98.         TXmllang m_Xmllang;
  99.     };
  100.     // types
  101.     typedef C_Attlist TAttlist;
  102.     typedef std::string TSoapText;
  103.     // getters
  104.     // setters
  105.     operator const std::string&(void) const;
  106.     CSoapText& operator=(const std::string& value);
  107.     // mandatory
  108.     // typedef C_Attlist TAttlist
  109.     bool IsSetAttlist(void) const;
  110.     bool CanGetAttlist(void) const;
  111.     void ResetAttlist(void);
  112.     const TAttlist& GetAttlist(void) const;
  113.     void SetAttlist(TAttlist& value);
  114.     TAttlist& SetAttlist(void);
  115.     // mandatory
  116.     // typedef std::string TSoapText
  117.     bool IsSetSoapText(void) const;
  118.     bool CanGetSoapText(void) const;
  119.     void ResetSoapText(void);
  120.     const TSoapText& GetSoapText(void) const;
  121.     void SetSoapText(const TSoapText& value);
  122.     TSoapText& SetSoapText(void);
  123.     // reset whole object
  124.     virtual void Reset(void);
  125. private:
  126.     // Prohibit copy constructor and assignment operator
  127.     CSoapText(const CSoapText&);
  128.     CSoapText& operator=(const CSoapText&);
  129.     // data
  130.     Uint4 m_set_State[1];
  131.     CRef< TAttlist > m_Attlist;
  132.     TSoapText m_SoapText;
  133. };
  134. ///////////////////////////////////////////////////////////
  135. ///////////////////// inline methods //////////////////////
  136. ///////////////////////////////////////////////////////////
  137. inline
  138. bool CSoapText::C_Attlist::IsSetXmllang(void) const
  139. {
  140.     return ((m_set_State[0] & 0x3) != 0);
  141. }
  142. inline
  143. bool CSoapText::C_Attlist::CanGetXmllang(void) const
  144. {
  145.     return IsSetXmllang();
  146. }
  147. inline
  148. const std::string& CSoapText::C_Attlist::GetXmllang(void) const
  149. {
  150.     if (!CanGetXmllang()) {
  151.         ThrowUnassigned(0);
  152.     }
  153.     return m_Xmllang;
  154. }
  155. inline
  156. void CSoapText::C_Attlist::SetXmllang(const std::string& value)
  157. {
  158.     m_Xmllang = value;
  159.     m_set_State[0] |= 0x3;
  160. }
  161. inline
  162. std::string& CSoapText::C_Attlist::SetXmllang(void)
  163. {
  164. #ifdef _DEBUG
  165.     if (!IsSetXmllang()) {
  166.         m_Xmllang = ms_UnassignedStr;
  167.     }
  168. #endif
  169.     m_set_State[0] |= 0x1;
  170.     return m_Xmllang;
  171. }
  172. inline
  173. CSoapText::operator const std::string&(void) const
  174. {
  175.     return GetSoapText();
  176. }
  177. inline
  178. CSoapText& CSoapText::operator=(const std::string& value)
  179. {
  180.     SetSoapText(value);
  181.     return *this;
  182. }
  183. inline
  184. bool CSoapText::IsSetAttlist(void) const
  185. {
  186.     return m_Attlist;
  187. }
  188. inline
  189. bool CSoapText::CanGetAttlist(void) const
  190. {
  191.     return IsSetAttlist();
  192. }
  193. inline
  194. const CSoapText::C_Attlist& CSoapText::GetAttlist(void) const
  195. {
  196.     if (!CanGetAttlist()) {
  197.         ThrowUnassigned(0);
  198.     }
  199.     return (*m_Attlist);
  200. }
  201. inline
  202. CSoapText::C_Attlist& CSoapText::SetAttlist(void)
  203. {
  204.     return (*m_Attlist);
  205. }
  206. inline
  207. bool CSoapText::IsSetSoapText(void) const
  208. {
  209.     return ((m_set_State[0] & 0xc) != 0);
  210. }
  211. inline
  212. bool CSoapText::CanGetSoapText(void) const
  213. {
  214.     return IsSetSoapText();
  215. }
  216. inline
  217. const std::string& CSoapText::GetSoapText(void) const
  218. {
  219.     if (!CanGetSoapText()) {
  220.         ThrowUnassigned(1);
  221.     }
  222.     return m_SoapText;
  223. }
  224. inline
  225. void CSoapText::SetSoapText(const std::string& value)
  226. {
  227.     m_SoapText = value;
  228.     m_set_State[0] |= 0xc;
  229. }
  230. inline
  231. std::string& CSoapText::SetSoapText(void)
  232. {
  233. #ifdef _DEBUG
  234.     if (!IsSetSoapText()) {
  235.         m_SoapText = ms_UnassignedStr;
  236.     }
  237. #endif
  238.     m_set_State[0] |= 0x4;
  239.     return m_SoapText;
  240. }
  241. ///////////////////////////////////////////////////////////
  242. ////////////////// end of inline methods //////////////////
  243. ///////////////////////////////////////////////////////////
  244. END_NCBI_SCOPE
  245. #endif // SOAP_TEXT_HPP
  246. /* --------------------------------------------------------------------------
  247. * $Log: soap_text.hpp,v $
  248. * Revision 1000.0  2003/10/29 17:39:39  gouriano
  249. * PRODUCTION: IMPORTED [ORIGINAL] Dev-tree R1.1
  250. *
  251. * Revision 1.1  2003/09/25 19:46:21  gouriano
  252. * Added soap Fault object
  253. *
  254. *
  255. * ===========================================================================
  256. */