Beispiel #1
0
bool CSeqTable_column::IsSet(size_t row) const
{
    size_t index = row;
    if ( IsSetSparse() ) {
        index = GetSparse().GetIndexAt(row);
        if ( index == CSeqTable_sparse_index::kSkipped ) {
            return IsSetSparse_other();
        }
    }
    if ( IsSetData() && GetData().IsSet(index) ) {
        return true;
    }
    return IsSetDefault();
}
Beispiel #2
0
const string* CSeqTable_column::GetStringPtr(size_t row) const
{
    size_t index = row;
    if ( IsSetSparse() ) {
        index = GetSparse().GetIndexAt(row);
        if ( index == CSeqTable_sparse_index::kSkipped ) {
            if ( IsSetSparse_other() ) {
                return &GetSparse_other().GetString();
            }
            return 0;
        }
    }
    if ( IsSetData() ) {
        if ( const string* ret = GetData().GetStringPtr(index) ) {
            return ret;
        }
    }
    if ( IsSetDefault() ) {
        return &GetDefault().GetString();
    }
    return 0;
}
Beispiel #3
0
CConstRef<CSeq_interval> CSeqTable_column::GetSeq_int(size_t row) const
{
    size_t index = row;
    if ( IsSetSparse() ) {
        index = GetSparse().GetIndexAt(row);
        if ( index == CSeqTable_sparse_index::kSkipped ) {
            if ( IsSetSparse_other() ) {
                return ConstRef(&GetSparse_other().GetInterval());
            }
            return null;
        }
    }
    if ( IsSetData() ) {
        const CSeqTable_multi_data::TInterval& arr = GetData().GetInterval();
        if ( index < arr.size() ) {
            return arr[index];
        }
    }
    if ( IsSetDefault() ) {
        return ConstRef(&GetDefault().GetInterval());
    }
    return null;
}
Beispiel #4
0
bool CSeq_submit::IsDelete(void) const
{
    return IsSetData () && GetData ().IsAnnots ();
}
Beispiel #5
0
bool CSeq_submit::IsEntrys(void) const
{
    return IsSetData () && GetData ().IsEntrys ();
}