NCBI C++ ToolKit
Entrez2_id_list.hpp
Go to the documentation of this file.

Go to the SVN repository for this file.

1 /* $Id: Entrez2_id_list.hpp 96130 2022-02-14 17:11:53Z grichenk $
2  * ===========================================================================
3  *
4  * PUBLIC DOMAIN NOTICE
5  * National Center for Biotechnology Information
6  *
7  * This software/database is a "United States Government Work" under the
8  * terms of the United States Copyright Act. It was written as part of
9  * the author's official duties as a United States Government employee and
10  * thus cannot be copyrighted. This software/database is freely available
11  * to the public for use. The National Library of Medicine and the U.S.
12  * Government have not placed any restriction on its use or reproduction.
13  *
14  * Although all reasonable efforts have been taken to ensure the accuracy
15  * and reliability of the software and data, the NLM and the U.S.
16  * Government do not and cannot warrant the performance or results that
17  * may be obtained by using this software or data. The NLM and the U.S.
18  * Government disclaim all warranties, express or implied, including
19  * warranties of performance, merchantability or fitness for any particular
20  * purpose.
21  *
22  * Please cite the author in any work or product based on this material.
23  *
24  * ===========================================================================
25  *
26  * Author: .......
27  *
28  * File Description:
29  * .......
30  *
31  * Remark:
32  * This code was originally generated by application DATATOOL
33  * using specifications from the ASN data definition file
34  * 'entrez2.asn'.
35  *
36  */
37 
38 #ifndef OBJECTS_ENTREZ2_ENTREZ2_ID_LIST_HPP
39 #define OBJECTS_ENTREZ2_ENTREZ2_ID_LIST_HPP
40 
41 #include <util/resize_iter.hpp>
42 
43 // generated includes
45 
46 // generated classes
47 
49 
50 BEGIN_objects_SCOPE // namespace ncbi::objects::
51 
53 {
55 public:
56  typedef TIntId TUid;
59 
60  // constructor
61  CEntrez2_id_list(void);
62  // destructor
63  ~CEntrez2_id_list(void);
64 
65  // so apps don't have to (de)marshal the list
66  TUidIterator GetUidIterator();
67  TConstUidIterator GetConstUidIterator() const;
68 
69  // resize the container to hold a certain number of UIDs
70  void Resize(size_t size);
71 
72  // set the container to a set of integer UIDs
73  void AssignUids(const vector<TUid>& uids);
74 
75 
77  static const size_t sm_UidSize; // bytes
78 
79  size_t GetUidSizeBits(void) const;
80  size_t GetUidSizeBytes(void) const;
81 
82  // Compress UIDs to 32-bit integers if possible.
83  void PackUids(void);
84 
85 private:
86  void x_SetNativeUidSize(void);
87 
88  // Prohibit copy constructor and assignment operator
91 };
92 
93 
94 
95 /////////////////// CEntrez2_id_list inline methods
96 
97 // constructor
98 inline
100 {
101 }
102 
103 
104 /////////////////// end of CEntrez2_id_list inline methods
105 
106 
107 END_objects_SCOPE // namespace ncbi::objects::
108 
110 
111 
112 #endif // OBJECTS_ENTREZ2_ENTREZ2_ID_LIST_HPP
113 /* Original file checksum: lines: 90, chars: 2507, CRC32: 92bb06a4 */
Data storage class.
list of record UIDs
CEntrez2_id_list(const CEntrez2_id_list &value)
CResizingIterator< TUids, TUid > TUidIterator
CEntrez2_id_list_Base Tparent
CConstResizingIterator< TUids, TUid > TConstUidIterator
CEntrez2_id_list & operator=(const CEntrez2_id_list &value)
static const size_t sm_UidSize
char value[7]
Definition: config.c:431
Int8 TIntId
Definition: ncbimisc.hpp:999
#define NCBI_DEPRECATED
#define END_NCBI_SCOPE
End previously defined NCBI scope.
Definition: ncbistl.hpp:103
#define BEGIN_NCBI_SCOPE
Define ncbi namespace.
Definition: ncbistl.hpp:100
#define NCBI_ENTREZ2_EXPORT
Definition: ncbi_export.h:464
const struct ncbi::grid::netcache::search::fields::SIZE size
Modified on Thu Mar 28 17:04:59 2024 by modify_doxy.py rev. 669887