input_cpio Class Reference

#include <cpio.h>

Inheritance diagram for input_cpio:

input_ty

Public Member Functions

virtual ~input_cpio ()
 input_cpio (input &deeper)
nstring name ()
long length ()
long read_inner (void *data, size_t nbytes)
long ftell_inner ()
bool is_remote () const
input child (nstring &name)

Private Member Functions

long hex8 ()
int hex_digit (bool &arg)
nstring get_name (long len)
void padding ()
 input_cpio ()
 input_cpio (const input_cpio &arg)
input_cpiooperator= (const input_cpio &arg)

Private Attributes

input deeper

Detailed Description

The input_cpio class is used to represent a CPIO archive.

Definition at line 28 of file cpio.h.


Constructor & Destructor Documentation

virtual input_cpio::~input_cpio (  )  [virtual]

The destructor.

input_cpio::input_cpio ( input deeper  ) 

The constructor.

Parameters:
deeper The input data source for this filter.

input_cpio::input_cpio (  )  [private]

The default constructor. Do not use.

input_cpio::input_cpio ( const input_cpio arg  )  [private]

The copy constructor. Do not use.


Member Function Documentation

nstring input_cpio::name (  )  [virtual]

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

Implements input_ty.

long input_cpio::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.

long input_cpio::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:
data Where to put the results of the read.
nbytes The maximum number of bytes to read.
Returns:
The actual number of bytes read, or zero for end-of-file.

Implements input_ty.

long input_cpio::ftell_inner (  )  [virtual]

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

Implements input_ty.

bool input_cpio::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.

input input_cpio::child ( nstring name  ) 

The child method is used to obtain an input which may be read to obtain the data of a member of the CPIO archive.

If there are no more members, a closed input will be returned. Use the input::is_open() method to work this out.

long input_cpio::hex8 (  )  [private]

The hex8 method is used to obtain an eight digit hexadecimal number from the input.

int input_cpio::hex_digit ( bool &  arg  )  [private]

The hex_digit method is used to obtain a hexadecimal digit from the input.

nstring input_cpio::get_name ( long  len  )  [private]

The get_name method is used to extract the archive name from the deeper input.

Parameters:
len The length of the name, not including the terminating NUL
Returns:
a string containing the name

void input_cpio::padding (  )  [private]

The padding method is used advance to the next 4-byte boundary, if necessary.

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

The assignment operator. Do not use.


Field Documentation

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

Definition at line 74 of file cpio.h.


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

Generated on Wed Mar 12 23:37:40 2008 for Aegis by  doxygen 1.5.5