libzypp 17.37.17
|
Helper to create and pass std::istream. More...
#include <zypp-core/base/inputstream.h>
Public Member Functions | |
InputStream () | |
Default ctor providing std::cin . | |
InputStream (std::istream &stream_r, std::string name_r=std::string()) | |
Ctor providing an aleady existig std::istream . | |
InputStream (Pathname file_r) | |
Ctor for reading a (gziped) file. | |
InputStream (Pathname file_r, std::string name_r) | |
Ctor for reading a (gziped) file. | |
InputStream (const std::string &file_r) | |
Ctor for reading a (gziped) file. | |
InputStream (const std::string &file_r, std::string name_r) | |
Ctor for reading a (gziped) file. | |
InputStream (const char *file_r) | |
Ctor for reading a (gziped) file. | |
InputStream (const char *file_r, std::string name_r) | |
Ctor for reading a (gziped) file. | |
~InputStream () | |
Dtor. | |
std::istream & | stream () const |
The std::istream. | |
operator std::istream & () const | |
Allow implicit conversion to std::istream. | |
const std::string & | name () const |
Name of the std::istream. | |
const Pathname & | path () const |
Path to the input file or empty if no file. | |
std::streamoff | size () const |
Size of the input stream (informal). | |
void | setSize (std::streamoff val_r) |
Set the size of the input stream. |
Private Attributes | |
Pathname | _path |
shared_ptr< std::istream > | _stream |
std::string | _name |
DefaultIntegral< std::streamoff,-1 > | _size |
Related Symbols | |
(Note that these are not member symbols.) | |
std::ostream & | operator<< (std::ostream &str, const InputStream &obj) |
Stream output. |
Helper to create and pass std::istream.
The provided std::istream may either be std::cin, some (gziped) file or an already existing std::istream
.
An optional name
argument may be passed to the ctor, to identify the stream in log messages, even if it is not a file.
Per default the name is "STDIN", the path to an input file or empty.
Definition at line 56 of file inputstream.h.
zypp::InputStream::InputStream | ( | ) |
Default ctor providing std::cin
.
Definition at line 63 of file inputstream.cc.
zypp::InputStream::InputStream | ( | std::istream & | stream_r, |
std::string | name_r = std::string() ) |
Ctor providing an aleady existig std::istream
.
Definition at line 73 of file inputstream.cc.
zypp::InputStream::InputStream | ( | Pathname | file_r | ) |
Ctor for reading a (gziped) file.
Definition at line 84 of file inputstream.cc.
zypp::InputStream::InputStream | ( | Pathname | file_r, |
std::string | name_r ) |
Ctor for reading a (gziped) file.
Definition at line 96 of file inputstream.cc.
zypp::InputStream::InputStream | ( | const std::string & | file_r | ) |
Ctor for reading a (gziped) file.
Definition at line 109 of file inputstream.cc.
zypp::InputStream::InputStream | ( | const std::string & | file_r, |
std::string | name_r ) |
Ctor for reading a (gziped) file.
Definition at line 121 of file inputstream.cc.
zypp::InputStream::InputStream | ( | const char * | file_r | ) |
Ctor for reading a (gziped) file.
Definition at line 134 of file inputstream.cc.
zypp::InputStream::InputStream | ( | const char * | file_r, |
std::string | name_r ) |
Ctor for reading a (gziped) file.
Definition at line 146 of file inputstream.cc.
zypp::InputStream::~InputStream | ( | ) |
Dtor.
Definition at line 159 of file inputstream.cc.
|
inline |
The std::istream.
const
. Definition at line 93 of file inputstream.h.
|
inline |
Allow implicit conversion to std::istream.
Definition at line 97 of file inputstream.h.
|
inline |
Name of the std::istream.
Per default this is "STDIN", the path to an input file or empty. A custom string may be provided to the ctor.
This may be used in log messages to identify the stream even even if it is not a file.
Definition at line 107 of file inputstream.h.
|
inline |
Path to the input file or empty if no file.
Definition at line 111 of file inputstream.h.
|
inline |
Size of the input stream (informal).
If constructed from an uncompressed file, the file size. Otherwise -1
. See setSize;
Definition at line 118 of file inputstream.h.
|
inline |
Set the size of the input stream.
You may set it to whatever vaule is appropriate. E.g. *=10 to compensate gzip compression. or the number of items, lines, ... The value is not used here, just provided.
Definition at line 127 of file inputstream.h.
|
Stream output.
Definition at line 167 of file inputstream.cc.
|
private |
Definition at line 131 of file inputstream.h.
|
private |
Definition at line 132 of file inputstream.h.
|
private |
Definition at line 133 of file inputstream.h.
|
private |
Definition at line 134 of file inputstream.h.