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

Go to the SVN repository for this file.

1 /* $Id: mask_writer_seqloc.hpp 44777 2010-02-12 18:29:18Z 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: Christiam Camacho
27  *
28  * File Description:
29  * Header file for CMaskWriterSeqLoc class.
30  *
31  */
32 
33 #ifndef CMASK_WRITER_SEQLOC_H
34 #define CMASK_WRITER_SEQLOC_H
35 
37 
39 
40 /**
41  **\brief Output filter to print masked sequence locations as NCBI Seq-loc
42  ** objects.
43  **
44  ** If the mask is empty, nothing is printed, otherwise a Seq-loc is printed
45  ** containing all masks.
46  **
47  **/
49 {
50 public:
51 
52  /**
53  **\brief Object constructor.
54  **
55  **\param arg_os output stream used to initialize the
56  ** base class instance
57  **\param format format for the Seq-locs (as defined in
58  ** mask_cmdline_args.hpp). \sa kOutputFormats
59  **
60  **/
61  CMaskWriterSeqLoc( CNcbiOstream & arg_os, const string & format );
62 
63  /**
64  **\brief Object destructor.
65  **
66  **/
67  virtual ~CMaskWriterSeqLoc() {}
68 
69  /**
70  **\brief Send the masking data to the output stream.
71  **
72  **\param bsh the bioseq handle
73  **\param mask the resulting list of masked intervals
74  **\param parsed_id bioseq id was parsed by CMaskReader.
75  **
76  **/
77  virtual void Print( objects::CBioseq_Handle& bsh,
78  const TMaskList & mask,
79  bool parsed_id = false );
80 
81 protected:
82  /// Seq-loc output format
84 };
85 
87 
88 #endif
ncbi::TMaskedQueryRegions mask
Output filter to print masked sequence locations as NCBI Seq-loc objects.
ESerialDataFormat m_OutputFormat
Seq-loc output format.
virtual ~CMaskWriterSeqLoc()
Object destructor.
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.
ESerialDataFormat
Data file format.
Definition: serialdef.hpp:71
#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
static Format format
Definition: njn_ioutil.cpp:53
Modified on Fri Apr 12 17:19:47 2024 by modify_doxy.py rev. 669887