39 #ifndef OBJECTS_SEQTABLE_SEQTABLE_MULTI_DATA_HPP
40 #define OBJECTS_SEQTABLE_SEQTABLE_MULTI_DATA_HPP
68 size_t GetSize(
void)
const;
71 bool IsSet(
size_t row_index)
const {
72 return row_index < GetSize();
86 E_Choice GetValueType(
void)
const;
92 bool CanGetInt(
void)
const;
96 bool CanGetReal(
void)
const;
103 size_t GetIntSize(
void)
const;
106 bool TryGetBool(
size_t row,
bool& v)
const;
109 bool TryGetReal(
size_t row,
double& v)
const;
112 bool TryGetInt1(
size_t row,
Int1& v)
const;
113 bool TryGetInt1WithRounding(
size_t row,
Int1& v)
const;
115 bool TryGetInt2(
size_t row,
Int2& v)
const;
116 bool TryGetInt2WithRounding(
size_t row,
Int2& v)
const;
118 bool TryGetInt4(
size_t row,
Int4& v)
const;
119 bool TryGetInt4WithRounding(
size_t row,
Int4& v)
const;
121 bool TryGetInt8(
size_t row,
Int8& v)
const;
122 bool TryGetInt8WithRounding(
size_t row,
Int8& v)
const;
126 return TryGetInt4(row, v);
129 return TryGetInt4WithRounding(row, v);
133 const string* GetStringPtr(
size_t row)
const;
140 return TryGetInt1(row, v);
143 return TryGetInt2(row, v);
146 return TryGetInt4(row, v);
149 return TryGetInt8(row, v);
152 return TryGetBool(row, v);
155 return TryGetReal(row, v);
158 if (
const string* ptr = GetStringPtr(row) ) {
181 void ChangeToBit(
void);
182 void ChangeToBit_bvector(
void);
183 void ChangeToInt1(
void);
184 void ChangeToInt2(
void);
185 void ChangeToInt4(
void);
186 void ChangeToInt8(
void);
190 void ChangeToInt_delta(
void);
191 void ChangeToInt_scaled(
int mul,
int add);
192 void ChangeToReal(
void);
193 void ChangeToReal_scaled(
double mul,
double add);
194 void ChangeToString(
const string* omitted_value = 0);
195 void ChangeToCommon_string(
const string* omit_value = 0);
196 void ChangeToBytes(
const TBytesValue* omitted_value = 0);
197 void ChangeToCommon_bytes(
const TBytesValue* omit_value = 0);
202 Tparent::ResetSelection();
211 bool x_TryGetInt8(
size_t row,
Int8& v,
const char* type_name)
const;
213 void x_ResetCache(
void);
Read hook for a choice variant (CHOICE)
CSeqTable_multi_data_Base –.
bool TryGetValue(size_t row, Int8 &v) const
void ResetSelection(void)
Reset the selection (set it to e_not_set).
bool TryGetInt(size_t row, int &v) const
bool TryGetValue(size_t row, bool &v) const
bool TryGetValue(size_t row, double &v) const
vector< char > TBytesValue
CSeqTable_multi_data(const CSeqTable_multi_data &value)
bool TryGetValue(size_t row, Int4 &v) const
CRef< CIntDeltaSumCache > m_Cache
bool TryGetIntWithRounding(size_t row, int &v) const
bool TryGetValue(size_t row, TBytesValue &v) const
bool TryGetValue(size_t row, Int1 &v) const
bool TryGetValue(size_t row, Int2 &v) const
bool TryGetValue(size_t row, string &v) const
bool IsSet(size_t row_index) const
CSeqTable_multi_data_Base Tparent
CSeqTable_multi_data & operator=(const CSeqTable_multi_data &value)
#define NCBISER_HAVE_GLOBAL_READ_VARIANT_HOOK(Class, Name, Hook)
#define NCBISER_HAVE_POST_READ(Class)
int16_t Int2
2-byte (16-bit) signed integer
int32_t Int4
4-byte (32-bit) signed integer
int64_t Int8
8-byte (64-bit) signed integer
int8_t Int1
1-byte (8-bit) signed integer
#define END_NCBI_SCOPE
End previously defined NCBI scope.
#define BEGIN_NCBI_SCOPE
Define ncbi namespace.
std::istream & in(std::istream &in_, double &x_)