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

Go to the SVN repository for this file.

1 /* $Id: mask_writer_int.hpp 48753 2011-02-24 17:19:39Z camacho $
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: Aleksandr Morgulis
27  *
28  * File Description:
29  * Header file for CMaskWriterInt class.
30  *
31  */
32 
33 #ifndef CMASK_WRITER_INT_H
34 #define CMASK_WRITER_INT_H
35 
37 
39 
40 /**
41  **\brief Output filter to print masked sequences as sets of
42  ** intervals.
43  **
44  ** Masking data for each new sequence in the file starts with
45  ** a fasta stile id. Then each contiguous interval of
46  ** masked sequence starting at position 'start' and ending
47  ** at position 'end' it is printed on a separate line
48  ** [start] - [end].
49  **
50  **/
52 {
53 public:
54 
55  /**
56  **\brief Object constructor.
57  **
58  **\param arg_os output stream used to initialize the
59  ** base class instance
60  **
61  **/
63  : CMaskWriter( arg_os ) {}
64 
65  /**
66  **\brief Object destructor.
67  **
68  **/
69  virtual ~CMaskWriterInt() {}
70 
71  /**
72  **\brief Send the masking data to the output stream.
73  **
74  **\param bsh the bioseq handle
75  **\param mask the resulting list of masked intervals
76  **\param parsed_id bioseq id was parsed by CMaskReader.
77  **
78  **/
79  virtual void Print( objects::CBioseq_Handle& bsh,
80  const TMaskList & mask,
81  bool parsed_id = false );
82 
83  /** Print masks only */
84  static void PrintMasks(CNcbiOstream& os, const TMaskList& mask);
85 };
86 
88 
89 #endif
ncbi::TMaskedQueryRegions mask
Output filter to print masked sequences as sets of intervals.
virtual ~CMaskWriterInt()
Object destructor.
CMaskWriterInt(CNcbiOstream &arg_os)
Object constructor.
A base class for winmasker output writers.
Definition: mask_writer.hpp:52
virtual void Print(objects::CBioseq_Handle &bsh, const TMaskList &mask, bool parsed_id=false)=0
Output masked sequence data.
#define END_NCBI_SCOPE
End previously defined NCBI scope.
Definition: ncbistl.hpp:103
#define BEGIN_NCBI_SCOPE
Define ncbi namespace.
Definition: ncbistl.hpp:100
IO_PREFIX::ostream CNcbiOstream
Portable alias for ostream.
Definition: ncbistre.hpp:149
#define NCBI_XOBJREAD_EXPORT
Definition: ncbi_export.h:1315
Modified on Wed Apr 17 13:09:23 2024 by modify_doxy.py rev. 669887