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

Go to the SVN repository for this file.

1 #ifndef OBJTOOLS_FORMAT___OSTREAM_TEXT_OSTREAM_HPP
2 #define OBJTOOLS_FORMAT___OSTREAM_TEXT_OSTREAM_HPP
3 
4 /* $Id: ostream_text_ostream.hpp 99481 2023-04-04 13:16:28Z stakhovv $
5 * ===========================================================================
6 *
7 * PUBLIC DOMAIN NOTICE
8 * National Center for Biotechnology Information
9 *
10 * This software/database is a "United States Government Work" under the
11 * terms of the United States Copyright Act. It was written as part of
12 * the author's official duties as a United States Government employee and
13 * thus cannot be copyrighted. This software/database is freely available
14 * to the public for use. The National Library of Medicine and the U.S.
15 * Government have not placed any restriction on its use or reproduction.
16 *
17 * Although all reasonable efforts have been taken to ensure the accuracy
18 * and reliability of the software and data, the NLM and the U.S.
19 * Government do not and cannot warrant the performance or results that
20 * may be obtained by using this software or data. The NLM and the U.S.
21 * Government disclaim all warranties, express or implied, including
22 * warranties of performance, merchantability or fitness for any particular
23 * purpose.
24 *
25 * Please cite the author in any work or product based on this material.
26 *
27 * ===========================================================================
28 *
29 * Author: Aaron Ucko, NCBI
30 * Mati Shomrat
31 *
32 * File Description:
33 * Text output stream that utilizes an ostream object as its target.
34 */
35 #include <corelib/ncbistd.hpp>
36 #include <corelib/ncbiobj.hpp>
37 #include <corelib/ncbistre.hpp>
38 
40 
41 
44 
45 
46 /////////////////////////////////////////////////////////////////////////////
47 //
48 // OStreamTextOStream
49 
51 {
52 public:
53 
54  COStreamTextOStream(void);
56 
57  virtual void AddParagraph(const list<string>& text,
58  const CSerialObject* obj = nullptr);
59 
60  virtual void AddLine( const CTempString& line,
61  const CSerialObject* obj = nullptr,
62  EAddNewline add_newline = eAddNewline_Yes );
63 
64  virtual void Flush( void );
65 
66 private:
68 };
69 
70 
71 /////////////////////////////////////////////////////////////////////////////
72 //
73 // OStreamTextOStreamFactory
74 /*
75 class COStreamTextOStreamFactory : public IFlatTextOStreamFactory
76 {
77 public:
78 
79  COStreamTextOStreamFactory(void);
80  COStreamTextOStreamFactory(CNcbiOstream& os);
81 
82  virtual IFlatTextOStream* Get(void) { return m_TextOStream; }
83 
84 private:
85 
86  CRef<COStreamTextOStream> m_TextOStream;
87 };
88 */
89 
90 
93 
94 #endif /* OBJTOOLS_FORMAT___OSTREAM_TEXT_OSTREAM_HPP */
Base class for all serializable objects.
Definition: serialbase.hpp:150
CTempString implements a light-weight string on top of a storage buffer whose lifetime management is ...
Definition: tempstr.hpp:65
Include a standard set of the NCBI C++ Toolkit most basic headers.
#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
IO_PREFIX::ostream CNcbiOstream
Portable alias for ostream.
Definition: ncbistre.hpp:149
#define NCBI_FORMAT_EXPORT
Definition: ncbi_export.h:496
static void text(MDB_val *v)
Definition: mdb_dump.c:62
Portable reference counted smart and weak pointers using CWeakRef, CRef, CObject and CObjectEx.
NCBI C++ stream class wrappers for triggering between "new" and "old" C++ stream libraries.
Modified on Wed May 15 15:03:24 2024 by modify_doxy.py rev. 669887