libdap::PipeResponse Class Reference

Encapsulate a response. This class provides special treatment for 'stream pipes.' It arranges to close them using pclose() instead of fclose(). More...

`#include <PipeResponse.h>`

Inheritance diagram for libdap::PipeResponse:

## Public Member Functions

virtual FILE * | get_stream () const
| PipeResponse (FILE *s)
| Initialize with a stream returned by popen(). More...
virtual void | set_stream (FILE *s)
virtual | ~PipeResponse ()
getters
virtual int | get_status () const
virtual std::istream * | get_cpp_stream () const
virtual ObjectType | get_type () const
virtual std::string | get_version () const
virtual std::string | get_protocol () const
setters
virtual void | set_status (int s)
virtual void | set_cpp_stream (std::istream *s)
virtual void | set_type (ObjectType o)
virtual void | set_version (const std::string &v)
virtual void | set_protocol (const std::string &p)

## Detailed Description

Encapsulate a response. This class provides special treatment for 'stream pipes.' It arranges to close them using pclose() instead of fclose().

Definition at line 47 of file PipeResponse.h.

## Constructor & Destructor Documentation

## PipeResponse()

libdap::PipeResponse::PipeResponse | ( | FILE * | s | ) |

inline

Initialize with a stream returned by popen().

Create an instance initialized to a stream returned by popen(). By default get_type() and get_version() return default values of unknown_type and "dods/0.0", respectively. Note that this class closes the stream.

    @note Since Unix provides no easy way to differentiate between a
    FILE* returned by fopen() or popen(), you're on your own here. Make
    sure you use the correct type of FILE Pointer.

    @see Response

    @param s Pointer to a pipe stream returned by popen().

Definition at line 70 of file PipeResponse.h.

## ~PipeResponse()

virtual libdap::PipeResponse::~PipeResponse | ( |  | ) |

inline virtual

Close the stream.

Definition at line 74 of file PipeResponse.h.

The documentation for this class was generated from the following file:

- PipeResponse.h