Aegis  4.25.D505
Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes
input_quoted_printable Class Reference

#include <quoted_print.h>

Inheritance diagram for input_quoted_printable:
input_ty

Public Member Functions

virtual ~input_quoted_printable ()
nstring name ()
off_t length ()
void keepalive ()
ssize_t read_inner (void *data, size_t nbytes)
off_t ftell_inner ()
bool is_remote () const

Static Public Member Functions

static input create (input &deeper)
static bool recognise (input &deeper)

Private Member Functions

 input_quoted_printable (input &deeper)
 input_quoted_printable ()
 input_quoted_printable (const input_quoted_printable &arg)
input_quoted_printableoperator= (const input_quoted_printable &arg)

Private Attributes

input deeper
bool eof
off_t pos

Detailed Description

Definition at line 25 of file quoted_print.h.


Constructor & Destructor Documentation

The destructor.

The constructor. It is private on purpose, use the create class method instead.

Parameters:
deeperthe source of data for this filter.

The default constructor.

The copy constructor.


Member Function Documentation

static input input_quoted_printable::create ( input deeper) [static]

The create class method is used to create new dynamically allocated instances of this class.

Parameters:
deeperthe source of data for this filter.

The ftell_inner method is used to determine the unbuffered current position within the input.

Implements input_ty.

bool input_quoted_printable::is_remote ( ) const [virtual]

The is_remote method is used to determine whether or not an input stream is from a local file or a remote source. This is only intended to be a generally informative thing, to provide information to the user, it isn't (and can't be) utterly precise.

Reimplemented from input_ty.

The keepalive method is used to set the SO_KEEPALIVE socket option, if the file is a socket. Does nothing otherwise.

Reimplemented from input_ty.

off_t input_quoted_printable::length ( ) [virtual]

The length method is used to determine the length of the input. May return -1 if the length is unknown.

Implements input_ty.

The name method is used to determine the name of the input.

Implements input_ty.

input_quoted_printable& input_quoted_printable::operator= ( const input_quoted_printable arg) [private]

The assignment operator.

ssize_t input_quoted_printable::read_inner ( void *  data,
size_t  nbytes 
) [virtual]

The read_inner method is used to read unbuffered data from the given input stream. At most nbytes bytes will be read into data. The number of bytes actually read will be returned. At end-of-file, a value <= 0 will be returned, and data will be unchanged. All file read errors or format errors are fatal, and will cause the method to not return.

Parameters:
dataWhere to put the results of the read.
nbytesThe maximum number of bytes to read.
Returns:
The actual number of bytes read, or zero for end-of-file.

Implements input_ty.

static bool input_quoted_printable::recognise ( input deeper) [static]

The recognise class method is sued to inspect an input to determine whether or not it appears to contain quoted printable content. Only the first 8kB is inspected, however no input is consumed.

Parameters:
deeperThe input stream to be inspected.
Returns:
false if it contains content excluded by the RFC (such as binary data, or malformed '=' constructs) true if the input stream contains quoted-printable input constructs false if no '=' symbols were observed, so no definitived answer can be given.

Field Documentation

The deeper instance variable is used to remember the source of data for this filter.

Definition at line 95 of file quoted_print.h.

Definition at line 97 of file quoted_print.h.

off_t input_quoted_printable::pos [private]

Definition at line 98 of file quoted_print.h.


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