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

生物技术

开发平台:

C/C++

  1. /*
  2.  * ===========================================================================
  3.  * PRODUCTION $Log: serialobject_Base.cpp,v $
  4.  * PRODUCTION Revision 1000.2  2004/06/01 19:44:48  gouriano
  5.  * PRODUCTION PRODUCTION: UPGRADED [GCC34_MSVC7] Dev-tree R1.11
  6.  * PRODUCTION
  7.  * ===========================================================================
  8.  */
  9. #include <ncbi_pch.hpp>
  10. #include "serialobject.hpp"
  11. #include <serial/serialbase.hpp>
  12. #include <serial/serialimpl.hpp>
  13. #include <serial/serialasn.hpp>
  14. #if HAVE_NCBI_C
  15. # include <asn.h>
  16. # include "twebenv.h"
  17. #else
  18. # include "webenv/Web_Env.hpp"
  19. #endif
  20. CTestSerialObject::CTestSerialObject(void)
  21.     : m_HaveName(false), m_NamePtr(0), m_Size(0), m_Next(0), m_WebEnv(0)
  22. {
  23. }
  24. CTestSerialObject::~CTestSerialObject(void)
  25. {
  26. }
  27. BEGIN_CLASS_INFO(CTestSerialObject)
  28. {
  29.     ADD_STD_MEMBER(m_Name);
  30.     ADD_STD_MEMBER(m_HaveName);
  31.     ADD_MEMBER(m_NamePtr, POINTER, (STD, (string)))->SetOptional();
  32.     ADD_STD_MEMBER(m_Size);
  33.     ADD_MEMBER(m_Attributes, STL_list, (STD, (string)));
  34.     ADD_MEMBER(m_Data, STL_CHAR_vector, (char));
  35.     ADD_MEMBER(m_Offsets, STL_vector, (STD, (short)));
  36.     ADD_MEMBER(m_Names, STL_map, (STD, (long), STD, (string)));
  37.     ADD_MEMBER(m_Next, POINTER, (CLASS, (CTestSerialObject)))->SetOptional();
  38. #if HAVE_NCBI_C
  39.     ADD_NAMED_OLD_ASN_MEMBER("m_WebEnv", m_WebEnv, "Web-Env", WebEnv)->SetOptional();
  40. #else
  41.     ADD_MEMBER(m_WebEnv, POINTER, (CLASS, (CWeb_Env)))->SetOptional();
  42. #endif
  43.     ADD_SUB_CLASS(CTestSerialObject2);
  44. }
  45. END_CLASS_INFO
  46. CTestSerialObject2::CTestSerialObject2(void)
  47. {
  48. }
  49. BEGIN_DERIVED_CLASS_INFO(CTestSerialObject2, CTestSerialObject)
  50. {
  51.     ADD_STD_MEMBER(m_Name2);
  52. }
  53. END_DERIVED_CLASS_INFO