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

Go to the SVN repository for this file.

1 #ifndef _BED_COLUMN_DATA_HPP_
2 #define _BED_COLUMN_DATA_HPP_
3 /*
4  * $Id: bed_column_data.hpp 93579 2021-05-01 20:54:52Z stakhovv $
5  *
6  * ===========================================================================
7  *
8  * PUBLIC DOMAIN NOTICE
9  * National Center for Biotechnology Information
10  *
11  * This software/database is a "United States Government Work" under the
12  * terms of the United States Copyright Act. It was written as part of
13  * the author's official duties as a United States Government employee and
14  * thus cannot be copyrighted. This software/database is freely available
15  * to the public for use. The National Library of Medicine and the U.S.
16  * Government have not placed any restriction on its use or reproduction.
17  *
18  * Although all reasonable efforts have been taken to ensure the accuracy
19  * and reliability of the software and data, the NLM and the U.S.
20  * Government do not and cannot warrant the performance or results that
21  * may be obtained by using this software or data. The NLM and the U.S.
22  * Government disclaim all warranties, express or implied, including
23  * warranties of performance, merchantability or fitness for any particular
24  * purpose.
25  *
26  * Please cite the author in any work or product based on this material.
27  *
28  * ===========================================================================
29  *
30  * Authors: Frank Ludwig
31  *
32  */
33 
34 #include <corelib/ncbistd.hpp>
36 #include "bed_column_data.hpp"
37 
40 
41 // ============================================================================
43 // ============================================================================
44 {
45 
46 public:
49  int flags =0);
50 
51  const string&
52  operator[](
53  size_t) const;
54 
55  unsigned int
56  LineNo() const { return mLineNo; };
57 
58  size_t
59  ColumnCount() const { return mData.size(); };
60 
61 protected:
62  void xSplitColumns(
63  const string&);
64  void xCleanColumnValues();
65  void xAddDefaultColumns();
66 
67  vector<string> mData;
68  unsigned int mLineNo;
69 
72 };
73 
76 
77 #endif // _BED_COLUMN_DATA_HPP_
unsigned int LineNo() const
unsigned int mLineNo
NStr::TSplitFlags mColumnSplitFlags
const string & operator[](size_t) const
vector< string > mData
CBedColumnData(const CReaderBase::TReaderLine &, int flags=0)
void xSplitColumns(const string &)
size_t ColumnCount() const
struct SReaderLine { SReaderLine(unsigned int line, string data):mLine(line), mData(data) {} TReaderLine
Definition: reader_base.hpp:66
Include a standard set of the NCBI C++ Toolkit most basic headers.
static uch flags
#define END_NCBI_SCOPE
End previously defined NCBI scope.
Definition: ncbistl.hpp:103
#define END_SCOPE(ns)
End the previously defined scope.
Definition: ncbistl.hpp:75
#define BEGIN_NCBI_SCOPE
Define ncbi namespace.
Definition: ncbistl.hpp:100
#define BEGIN_SCOPE(ns)
Define a new scope.
Definition: ncbistl.hpp:72
int TSplitFlags
Bitwise OR of ESplitFlags.
Definition: ncbistr.hpp:2510
Modified on Sat Dec 09 04:49:28 2023 by modify_doxy.py rev. 669887