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

Go to the SVN repository for this file.

1 #ifndef _BLOBSTREAM_HPP_
2 #define _BLOBSTREAM_HPP_
3 
4 /* $Id: blobstream.hpp 71962 2016-04-08 13:52:30Z ucko $
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 * File Name: $Id: blobstream.hpp 71962 2016-04-08 13:52:30Z ucko $
30 *
31 * Author: Michael Kholodov
32 *
33 * File Description: stream implementation for reading and writing BLOBs
34 */
35 
36 #include "bytestreambuf.hpp"
37 #include <dbapi/driver/public.hpp>
38 
40 
41 class CBlobIStream : public istream
42 {
43 public:
44 
45  CBlobIStream(CResultSet* rs, streamsize bufsize = 0);
46 
47  virtual ~CBlobIStream();
48 };
49 
50 //====================================================================
51 class CBlobOStream : public ostream
52 {
53 public:
54 
56  I_BlobDescriptor* desc,
57  size_t datasize,
58  streamsize bufsize,
60  bool destroyConn = false);
61 
63  unsigned int item_num,
64  size_t datasize,
65  streamsize bufsize,
68 
69  virtual ~CBlobOStream();
70 
71 private:
75 };
76 
77 //====================================================================
78 
80 #endif // _BLOBSTREAM_HPP_
virtual ~CBlobIStream()
Definition: blobstream.cpp:51
CBlobIStream(CResultSet *rs, streamsize bufsize=0)
Definition: blobstream.cpp:45
I_BlobDescriptor * m_desc
Definition: blobstream.hpp:72
virtual ~CBlobOStream()
Definition: blobstream.cpp:89
CDB_Connection * m_conn
Definition: blobstream.hpp:73
bool m_destroyConn
Definition: blobstream.hpp:74
CBlobOStream(CDB_Connection *connAux, I_BlobDescriptor *desc, size_t datasize, streamsize bufsize, TBlobOStreamFlags flags, bool destroyConn=false)
Definition: blobstream.cpp:59
I_BlobDescriptor::
Definition: interfaces.hpp:369
static uch flags
static CS_CONNECTION * conn
Definition: ct_dynamic.c:25
int TBlobOStreamFlags
Definition: dbapi.hpp:103
#define END_NCBI_SCOPE
End previously defined NCBI scope.
Definition: ncbistl.hpp:103
#define BEGIN_NCBI_SCOPE
Define ncbi namespace.
Definition: ncbistl.hpp:100
static PCRE2_SIZE bufsize
Definition: pcre2grep.c:237
Modified on Fri Sep 20 14:57:25 2024 by modify_doxy.py rev. 669887