(rows.size() == 0) {
46vector<size_t>::const_iterator row_it = rows.begin();
50CSeqTable_column::TData::TString::iterator it = col->
SetData().SetString().begin();
51 while(row_it != rows.end() && it != col->
SetData().SetString().end()) {
52 if(orig_pos == *row_it) {
53it = col->
SetData().SetString().erase(it);
62CSeqTable_column::TData::TId::iterator it = col->
SetData().SetId().begin();
63 while(row_it != rows.end() && it != col->
SetData().SetId().end()) {
64 if(orig_pos == *row_it) {
65it = col->
SetData().SetId().erase(it);
74CSeqTable_column::TData::TInt::iterator it = col->
SetData().SetInt().begin();
75 while(row_it != rows.end() && it != col->
SetData().SetInt().end()) {
76 if(orig_pos == *row_it) {
77it = col->
SetData().SetInt().erase(it);
86CSeqTable_column::TData::TBit::iterator it = col->
SetData().SetBit().begin();
87 while(row_it != rows.end() && it != col->
SetData().SetBit().end()) {
88 if(orig_pos == *row_it) {
89it = col->
SetData().SetBit().erase(it);
98CSeqTable_column::TData::TBytes::iterator it = col->
SetData().SetBytes().begin();
99 while(row_it != rows.end() && it != col->
SetData().SetBytes().end()) {
100 if(orig_pos == *row_it) {
101it = col->
SetData().SetBytes().erase(it);
110CSeqTable_column::TData::TReal::iterator it = col->
SetData().SetReal().begin();
111 while(row_it != rows.end() && it != col->
SetData().SetReal().end()) {
112 if(orig_pos == *row_it) {
113it = col->
SetData().SetReal().erase(it);
127 if(rows.size() > 0) {
131 table->SetNum_rows(
table->GetNum_rows() -
static_cast<int>(rows.size()));
137 const string& field,
144vector<size_t> rows_to_remove;
145 if(
column->GetData().IsInt()) {
146CSeqTable_column::TData::TInt::const_iterator it =
column->GetData().GetInt().begin();
148 while(it !=
column->GetData().GetInt().end()) {
150 if(!string_constraint->DoesTextMatch(num)) {
151rows_to_remove.push_back(
row);
156}
else if(
column->GetData().IsString()) {
157CSeqTable_column::TData::TString::const_iterator it =
column->GetData().GetString().begin();
159 while(it !=
column->GetData().GetString().end()) {
160 if(!string_constraint->DoesTextMatch(*it)) {
161rows_to_remove.push_back(
row);
166}
else if(
column->GetData().IsId()) {
167CSeqTable_column::TData::TId::const_iterator it =
column->GetData().GetId().begin();
169 while(it !=
column->GetData().GetId().end()) {
170 stringid_string = (*it)->AsFastaString();
171 if(!string_constraint->DoesTextMatch(id_string)) {
172rows_to_remove.push_back(
row);
187 column=
newobjects::CSeqTable_column();
188 column->SetHeader().SetTitle(field);
216column2 =
newobjects::CSeqTable_column();
218 table->SetColumns().push_back(column2);
225column1->
SetData().SetString()[
row] =
"";
234 if(!column1 && !column2) {
238column1 =
newobjects::CSeqTable_column();
240column1->
SetData().SetString();
241 table->SetColumns().push_back(column1);
244column2 =
newobjects::CSeqTable_column();
246column2->
SetData().SetString();
247 table->SetColumns().push_back(column2);
252 if(row < column2->GetData().GetString().
size()) {
255column1->
SetData().SetString()[
row] = orig2;
256column2->
SetData().SetString()[
row] = orig1;
269column2 =
newobjects::CSeqTable_column();
271 table->SetColumns().push_back(column2);
284 ITERATE(objects::CSeq_table::TColumns, cit, values_table->GetColumns()) {
285 if((*cit)->IsSetHeader() && (*cit)->GetHeader().IsSetTitle()
298objects::CSeq_table::TColumns::iterator cit =
table->SetColumns().begin();
299 while(cit !=
table->SetColumns().end()) {
300 if((*cit)->IsSetHeader() && (*cit)->GetHeader().IsSetTitle()
302cit =
table->SetColumns().erase(cit);
316col =
newobjects::CSeqTable_column();
317col->SetHeader().SetTitle(
label);
318col->SetData().SetString();
319 table->SetColumns().push_back(col);
329col =
newobjects::CSeqTable_column();
330col->SetHeader().SetTitle(
label);
331col->SetData().SetInt();
332 table->SetColumns().push_back(col);
340 while(
column->SetData().SetString().size() <
row+ 1) {
341 column->SetData().SetString().push_back (
"");
344 stringorig_val =
column->GetData().GetString()[
row];
347 column->SetData().SetString()[
row] = orig_val;
356 if((*cit)->IsSetHeader() && (*cit)->GetHeader().IsSetTitle()
365new_col->SetHeader().SetTitle(subtype_name);
366 while(new_col->SetData().SetString().size() <
row) {
367new_col->SetData().SetString().push_back (
"");
369new_col->SetData().SetString().push_back(
value);
370 table->SetColumns().push_back(new_col);
380 if((*cit)->IsSetHeader() && (*cit)->GetHeader().IsSetTitle()
382 while((*cit)->SetData().SetInt().size() <
row+ 1) {
383(*cit)->SetData().SetInt().push_back (0);
385(*cit)->SetData().SetInt()[
row] =
value;
392new_col->SetHeader().SetTitle(subtype_name);
393 while(new_col->SetData().SetInt().size() <
row) {
394new_col->SetData().SetInt().push_back (0);
396new_col->SetData().SetInt().push_back(
value);
397 table->SetColumns().push_back(new_col);
404 if(!col || !col->IsSetData() || !col->GetData().IsString() || col->GetData().GetSize() < 1) {
408 size_tnum_rows = col->GetData().GetSize();
409 for(
size_t row= 0;
row< num_rows;
row++) {
410col->SetData().SetString()[
row] =
val;
418 const stringprotein(
"protein");
420name1 = name1.substr(protein.length());
423name2 = name2.substr(protein.length());
444 if(pos != string::npos) {
445name1 = name1.substr(0, pos);
448 if(pos != string::npos) {
449name2 = name2.substr(0, pos);
506 intnum_conflicts = 0;
512CSeqTable_column::TData::TString::const_iterator it1 = orig_col->
GetData().
GetString().begin();
513CSeqTable_column::TData::TString::const_iterator it2 = new_col->
GetData().
GetString().begin();
527CSeqTable_column::TData::TInt::const_iterator it1 = new_col->
GetData().
GetInt().begin();
528CSeqTable_column::TData::TInt::const_iterator it2 = new_col->
GetData().
GetInt().begin();
540 returnnum_conflicts;
546 if(!values_table || !values_table->IsSetNum_rows())
return;
548 size_tnum_rows = values_table->GetNum_rows();
550 NON_CONST_ITERATE(objects::CSeq_table::TColumns, it, values_table->SetColumns()) {
551 if((*it)->IsSetData() && (*it)->GetData().IsString()) {
552 while((*it)->GetData().GetString().size() < num_rows) {
553(*it)->SetData().SetString().push_back(
"");
static const char * column
#define ITERATE(Type, Var, Cont)
ITERATE macro to sequence through container elements.
#define NON_CONST_ITERATE(Type, Var, Cont)
Non constant version of ITERATE macro.
#define END_NCBI_SCOPE
End previously defined NCBI scope.
#define BEGIN_NCBI_SCOPE
Define ncbi namespace.
static bool IsBlank(const CTempString str, SIZE_TYPE pos=0)
Check if a string is blank (has no text).
static SIZE_TYPE Find(const CTempString str, const CTempString pattern, ECase use_case=eCase, EDirection direction=eForwardSearch, SIZE_TYPE occurrence=0)
Find the pattern in the string.
static bool StartsWith(const CTempString str, const CTempString start, ECase use_case=eCase)
Check if a string starts with a specified prefix value.
static bool EqualNocase(const CTempString s1, SIZE_TYPE pos, SIZE_TYPE n, const char *s2)
Case-insensitive equality of a substring with another string.
static enable_if< is_arithmetic< TNumeric >::value||is_convertible< TNumeric, Int8 >::value, string >::type NumericToString(TNumeric value, TNumToStringFlags flags=0, int base=10)
Convert numeric value to string.
static bool Equal(const CTempString s1, SIZE_TYPE pos, SIZE_TYPE n, const char *s2, ECase use_case=eCase)
Test for equality of a substring with another string.
static string & ReplaceInPlace(string &src, const string &search, const string &replace, SIZE_TYPE start_pos=0, SIZE_TYPE max_replace=0, SIZE_TYPE *num_replace=0)
Replace occurrences of a substring within a string.
static const char label[]
bool IsBit(void) const
Check if variant Bit is selected.
void SetHeader(THeader &value)
Assign a value to Header data member.
bool IsId(void) const
Check if variant Id is selected.
bool IsString(void) const
Check if variant String is selected.
bool IsReal(void) const
Check if variant Real is selected.
vector< CRef< CSeqTable_column > > TColumns
bool IsInt(void) const
Check if variant Int is selected.
bool IsBytes(void) const
Check if variant Bytes is selected.
void SetData(TData &value)
Assign a value to Data data member.
bool IsSetData(void) const
row data Check if a value has been assigned to Data data member.
const TInt & GetInt(void) const
Get the variant data.
const TString & GetString(void) const
Get the variant data.
const TData & GetData(void) const
Get the Data member data.
where boath are integers</td > n< td ></td > n</tr > n< tr > n< td > tse</td > n< td > optional</td > n< td > String</td > n< td class=\"description\"> TSE option controls what blob is orig
<!DOCTYPE HTML >< html > n< header > n< title > PubSeq Gateway Help Page</title > n< style > n table
constexpr bool empty(list< Ts... >) noexcept
const struct ncbi::grid::netcache::search::fields::SIZE size
const GenericPointer< typename T::ValueType > T2 value
void ApplyToTable(CRef< CSeq_table > table, const string &field, const string &val, edit::EExistingText existing_text)
bool MatchColumnName(string name1, string name2)
void RemoveFromTable(CRef< CSeq_table > table, const string &field)
void AddValueToColumn(CRef< objects::CSeqTable_column > column, string value, size_t row, edit::EExistingText existing_text)
void CopyTableColumns(CRef< CSeq_table > table, const string &field1, const string &field2, edit::EExistingText existing_text)
CRef< objects::CSeqTable_column > AddIntColumnToTable(CRef< objects::CSeq_table > table, string label)
CRef< objects::CSeqTable_column > FindSeqTableColumnByName(CRef< objects::CSeq_table > values_table, string column_name)
void RemoveTableRowsThatDoNotMatchStringConstraint(CRef< CSeq_table > table, const string &field, CRef< edit::CStringConstraint > string_constraint)
bool RemoveSeqTableColumnByName(CRef< objects::CSeq_table > table, string column_name)
USING_SCOPE(ncbi::objects)
void AddValueToTable(CRef< objects::CSeq_table > table, string subtype_name, string value, size_t row, edit::EExistingText existing_text)
void ConvertTableColumns(CRef< CSeq_table > table, const string &field1, const string &field2, edit::EExistingText existing_text)
bool IsOrgColumnName(string name)
CRef< objects::CSeqTable_column > AddStringColumnToTable(CRef< objects::CSeq_table > table, string label)
void SwapTableColumns(CRef< CSeq_table > table, const string &field1, const string &field2)
bool QualifierNamesAreEquivalent(string name1, string name2)
void RemoveRowsFromTable(CRef< CSeq_table > table, const vector< size_t > &rows)
void RemoveRowsFromColumn(CRef< CSeqTable_column > col, const vector< size_t > &rows)
void FillShortColumns(CRef< objects::CSeq_table > values_table)
void SetColumnValue(CRef< objects::CSeqTable_column > col, string val)
int CountColumnValueConflicts(CRef< CSeqTable_column > orig_col, CRef< CSeqTable_column > new_col)
bool IsOrgModNoteName(const string &name)
bool IsSubSourceNoteName(const string &name)
#define row(bind, expected)
bool AddValueToString(string &str, const string &value, EExistingText existing_text)
Add text to an existing string, using the "existing_text" directive to combine new text with existing...
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4