NCBI C++ ToolKit
Sparse_align.cpp
Go to the documentation of this file.

Go to the SVN repository for this file.

1 /* $Id: Sparse_align.cpp 74562 2016-09-13 13:46:29Z ivanov $
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: Kamen Todorov
27  *
28  * File Description:
29  * Sparse-align
30  *
31  * Remark:
32  * This code was originally generated by application DATATOOL
33  * using the following specifications:
34  * 'seqalign.asn'.
35  */
36 
37 // standard includes
38 #include <ncbi_pch.hpp>
39 
42 
43 
45 
46 BEGIN_objects_SCOPE // namespace ncbi::objects::
47 
48 // destructor
50 {
51 }
52 
53 
54 void CSparse_align::Validate(bool /*full_test*/) const
55 {
56  CheckNumRows();
57  CheckNumSegs();
58 }
59 
60 
62  size_t numseg = GetNumseg();
63  _SEQALIGN_ASSERT(GetFirst_starts().size() == numseg);
64  _SEQALIGN_ASSERT(GetSecond_starts().size() == numseg);
65  _SEQALIGN_ASSERT(GetLens().size() == numseg);
67  _SEQALIGN_ASSERT(IsSetSeg_scores() ? GetSeg_scores().size() == numseg : true);
68  _SEQALIGN_ASSERT(numseg <= kMax_Int);
69  return (TNumseg)numseg;
70 }
71 
72 
73 END_objects_SCOPE // namespace ncbi::objects::
74 
76 
77 /* Original file checksum: lines: 57, chars: 1735, CRC32: ca1dcbf8 */
User-defined methods of the data storage class.
TNumseg CheckNumSegs(void) const
TDim CheckNumRows(void) const
~CSparse_align(void)
void Validate(bool full_test=false) const
Validators.
#define kMax_Int
Definition: ncbi_limits.h:184
#define END_NCBI_SCOPE
End previously defined NCBI scope.
Definition: ncbistl.hpp:103
#define BEGIN_NCBI_SCOPE
Define ncbi namespace.
Definition: ncbistl.hpp:100
const TSeg_scores & GetSeg_scores(void) const
Get the Seg_scores member data.
bool IsSetSeg_scores(void) const
per-segment scores Check if a value has been assigned to Seg_scores data member.
const TSecond_starts & GetSecond_starts(void) const
Get the Second_starts member data.
const TLens & GetLens(void) const
Get the Lens member data.
bool IsSetSecond_strands(void) const
Check if a value has been assigned to Second_strands data member.
const TFirst_starts & GetFirst_starts(void) const
Get the First_starts member data.
TNumseg GetNumseg(void) const
Get the Numseg member data.
const TSecond_strands & GetSecond_strands(void) const
Get the Second_strands member data.
const struct ncbi::grid::netcache::search::fields::SIZE size
#define _SEQALIGN_ASSERT(expr)
Modified on Fri May 03 15:48:33 2024 by modify_doxy.py rev. 669887