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

生物技术

开发平台:

C/C++

  1. /*
  2.  * ===========================================================================
  3.  * PRODUCTION $Log: Query_Search_.hpp,v $
  4.  * PRODUCTION Revision 1000.1  2004/04/12 17:20:26  gouriano
  5.  * PRODUCTION PRODUCTION: UPGRADED [CATCHUP_003] Dev-tree R1.5
  6.  * PRODUCTION
  7.  * ===========================================================================
  8.  */
  9. /* $Id: Query_Search_.hpp,v 1000.1 2004/04/12 17:20:26 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.  * File Description:
  35.  *   This code is generated by application DATATOOL
  36.  *   using specifications from the data definition file
  37.  *   'twebenv.asn'.
  38.  *
  39.  * ATTENTION:
  40.  *   Don't edit or check-in this file to the CVS as this file will
  41.  *   be overridden (by DATATOOL) without warning!
  42.  * ===========================================================================
  43.  */
  44. #ifndef QUERY_SEARCH_BASE_HPP
  45. #define QUERY_SEARCH_BASE_HPP
  46. // standard includes
  47. #include <serial/serialbase.hpp>
  48. // generated includes
  49. #include <list>
  50. #include <string>
  51. // forward declarations
  52. class CFilter_Value;
  53. // generated classes
  54. class CQuery_Search_Base : public ncbi::CSerialObject
  55. {
  56.     typedef ncbi::CSerialObject Tparent;
  57. public:
  58.     // constructor
  59.     CQuery_Search_Base(void);
  60.     // destructor
  61.     virtual ~CQuery_Search_Base(void);
  62.     // type info
  63.     DECLARE_INTERNAL_TYPE_INFO();
  64.     // types
  65.     typedef std::string TDb;
  66.     typedef std::string TTerm;
  67.     typedef std::string TField;
  68.     typedef std::list< ncbi::CRef< CFilter_Value > > TFilters;
  69.     typedef int TCount;
  70.     typedef int TFlags;
  71.     // getters
  72.     // setters
  73.     // mandatory
  74.     // typedef std::string TDb
  75.     bool IsSetDb(void) const;
  76.     bool CanGetDb(void) const;
  77.     void ResetDb(void);
  78.     const TDb& GetDb(void) const;
  79.     void SetDb(const TDb& value);
  80.     TDb& SetDb(void);
  81.     // mandatory
  82.     // typedef std::string TTerm
  83.     bool IsSetTerm(void) const;
  84.     bool CanGetTerm(void) const;
  85.     void ResetTerm(void);
  86.     const TTerm& GetTerm(void) const;
  87.     void SetTerm(const TTerm& value);
  88.     TTerm& SetTerm(void);
  89.     // optional
  90.     // typedef std::string TField
  91.     bool IsSetField(void) const;
  92.     bool CanGetField(void) const;
  93.     void ResetField(void);
  94.     const TField& GetField(void) const;
  95.     void SetField(const TField& value);
  96.     TField& SetField(void);
  97.     // optional
  98.     // typedef std::list< ncbi::CRef< CFilter_Value > > TFilters
  99.     bool IsSetFilters(void) const;
  100.     bool CanGetFilters(void) const;
  101.     void ResetFilters(void);
  102.     const TFilters& GetFilters(void) const;
  103.     TFilters& SetFilters(void);
  104.     // mandatory
  105.     // typedef int TCount
  106.     bool IsSetCount(void) const;
  107.     bool CanGetCount(void) const;
  108.     void ResetCount(void);
  109.     TCount GetCount(void) const;
  110.     void SetCount(const TCount& value);
  111.     TCount& SetCount(void);
  112.     // optional
  113.     // typedef int TFlags
  114.     bool IsSetFlags(void) const;
  115.     bool CanGetFlags(void) const;
  116.     void ResetFlags(void);
  117.     TFlags GetFlags(void) const;
  118.     void SetFlags(const TFlags& value);
  119.     TFlags& SetFlags(void);
  120.     // reset whole object
  121.     virtual void Reset(void);
  122. private:
  123.     // Prohibit copy constructor and assignment operator
  124.     CQuery_Search_Base(const CQuery_Search_Base&);
  125.     CQuery_Search_Base& operator=(const CQuery_Search_Base&);
  126.     // data
  127.     Uint4 m_set_State[1];
  128.     TDb m_Db;
  129.     TTerm m_Term;
  130.     TField m_Field;
  131.     TFilters m_Filters;
  132.     TCount m_Count;
  133.     TFlags m_Flags;
  134. };
  135. ///////////////////////////////////////////////////////////
  136. ///////////////////// inline methods //////////////////////
  137. ///////////////////////////////////////////////////////////
  138. inline
  139. bool CQuery_Search_Base::IsSetDb(void) const
  140. {
  141.     return ((m_set_State[0] & 0x3) != 0);
  142. }
  143. inline
  144. bool CQuery_Search_Base::CanGetDb(void) const
  145. {
  146.     return IsSetDb();
  147. }
  148. inline
  149. const std::string& CQuery_Search_Base::GetDb(void) const
  150. {
  151.     if (!CanGetDb()) {
  152.         ThrowUnassigned(0);
  153.     }
  154.     return m_Db;
  155. }
  156. inline
  157. void CQuery_Search_Base::SetDb(const std::string& value)
  158. {
  159.     m_Db = value;
  160.     m_set_State[0] |= 0x3;
  161. }
  162. inline
  163. std::string& CQuery_Search_Base::SetDb(void)
  164. {
  165. #ifdef _DEBUG
  166.     if (!IsSetDb()) {
  167.         m_Db = ms_UnassignedStr;
  168.     }
  169. #endif
  170.     m_set_State[0] |= 0x1;
  171.     return m_Db;
  172. }
  173. inline
  174. bool CQuery_Search_Base::IsSetTerm(void) const
  175. {
  176.     return ((m_set_State[0] & 0xc) != 0);
  177. }
  178. inline
  179. bool CQuery_Search_Base::CanGetTerm(void) const
  180. {
  181.     return IsSetTerm();
  182. }
  183. inline
  184. const std::string& CQuery_Search_Base::GetTerm(void) const
  185. {
  186.     if (!CanGetTerm()) {
  187.         ThrowUnassigned(1);
  188.     }
  189.     return m_Term;
  190. }
  191. inline
  192. void CQuery_Search_Base::SetTerm(const std::string& value)
  193. {
  194.     m_Term = value;
  195.     m_set_State[0] |= 0xc;
  196. }
  197. inline
  198. std::string& CQuery_Search_Base::SetTerm(void)
  199. {
  200. #ifdef _DEBUG
  201.     if (!IsSetTerm()) {
  202.         m_Term = ms_UnassignedStr;
  203.     }
  204. #endif
  205.     m_set_State[0] |= 0x4;
  206.     return m_Term;
  207. }
  208. inline
  209. bool CQuery_Search_Base::IsSetField(void) const
  210. {
  211.     return ((m_set_State[0] & 0x30) != 0);
  212. }
  213. inline
  214. bool CQuery_Search_Base::CanGetField(void) const
  215. {
  216.     return IsSetField();
  217. }
  218. inline
  219. const std::string& CQuery_Search_Base::GetField(void) const
  220. {
  221.     if (!CanGetField()) {
  222.         ThrowUnassigned(2);
  223.     }
  224.     return m_Field;
  225. }
  226. inline
  227. void CQuery_Search_Base::SetField(const std::string& value)
  228. {
  229.     m_Field = value;
  230.     m_set_State[0] |= 0x30;
  231. }
  232. inline
  233. std::string& CQuery_Search_Base::SetField(void)
  234. {
  235. #ifdef _DEBUG
  236.     if (!IsSetField()) {
  237.         m_Field = ms_UnassignedStr;
  238.     }
  239. #endif
  240.     m_set_State[0] |= 0x10;
  241.     return m_Field;
  242. }
  243. inline
  244. bool CQuery_Search_Base::IsSetFilters(void) const
  245. {
  246.     return ((m_set_State[0] & 0xc0) != 0);
  247. }
  248. inline
  249. bool CQuery_Search_Base::CanGetFilters(void) const
  250. {
  251.     return true;
  252. }
  253. inline
  254. const std::list< ncbi::CRef< CFilter_Value > >& CQuery_Search_Base::GetFilters(void) const
  255. {
  256.     return m_Filters;
  257. }
  258. inline
  259. std::list< ncbi::CRef< CFilter_Value > >& CQuery_Search_Base::SetFilters(void)
  260. {
  261.     m_set_State[0] |= 0x40;
  262.     return m_Filters;
  263. }
  264. inline
  265. bool CQuery_Search_Base::IsSetCount(void) const
  266. {
  267.     return ((m_set_State[0] & 0x300) != 0);
  268. }
  269. inline
  270. bool CQuery_Search_Base::CanGetCount(void) const
  271. {
  272.     return IsSetCount();
  273. }
  274. inline
  275. void CQuery_Search_Base::ResetCount(void)
  276. {
  277.     m_Count = 0;
  278.     m_set_State[0] &= ~0x300;
  279. }
  280. inline
  281. int CQuery_Search_Base::GetCount(void) const
  282. {
  283.     if (!CanGetCount()) {
  284.         ThrowUnassigned(4);
  285.     }
  286.     return m_Count;
  287. }
  288. inline
  289. void CQuery_Search_Base::SetCount(const int& value)
  290. {
  291.     m_Count = value;
  292.     m_set_State[0] |= 0x300;
  293. }
  294. inline
  295. int& CQuery_Search_Base::SetCount(void)
  296. {
  297. #ifdef _DEBUG
  298.     if (!IsSetCount()) {
  299.         memset(&m_Count,ms_UnassignedByte,sizeof(m_Count));
  300.     }
  301. #endif
  302.     m_set_State[0] |= 0x100;
  303.     return m_Count;
  304. }
  305. inline
  306. bool CQuery_Search_Base::IsSetFlags(void) const
  307. {
  308.     return ((m_set_State[0] & 0xc00) != 0);
  309. }
  310. inline
  311. bool CQuery_Search_Base::CanGetFlags(void) const
  312. {
  313.     return IsSetFlags();
  314. }
  315. inline
  316. void CQuery_Search_Base::ResetFlags(void)
  317. {
  318.     m_Flags = 0;
  319.     m_set_State[0] &= ~0xc00;
  320. }
  321. inline
  322. int CQuery_Search_Base::GetFlags(void) const
  323. {
  324.     if (!CanGetFlags()) {
  325.         ThrowUnassigned(5);
  326.     }
  327.     return m_Flags;
  328. }
  329. inline
  330. void CQuery_Search_Base::SetFlags(const int& value)
  331. {
  332.     m_Flags = value;
  333.     m_set_State[0] |= 0xc00;
  334. }
  335. inline
  336. int& CQuery_Search_Base::SetFlags(void)
  337. {
  338. #ifdef _DEBUG
  339.     if (!IsSetFlags()) {
  340.         memset(&m_Flags,ms_UnassignedByte,sizeof(m_Flags));
  341.     }
  342. #endif
  343.     m_set_State[0] |= 0x400;
  344.     return m_Flags;
  345. }
  346. ///////////////////////////////////////////////////////////
  347. ////////////////// end of inline methods //////////////////
  348. ///////////////////////////////////////////////////////////
  349. #endif // QUERY_SEARCH_BASE_HPP