Scopira 20080306

scopira::tool::polyoflow Class Reference

#include <polyflow.h>

Inheritance diagram for scopira::tool::polyoflow:
scopira::tool::oobjflow_i scopira::tool::otflow_i scopira::tool::oflow_i scopira::tool::flow_i scopira::tool::object scopira::tool::isooflow scopira::tool::archiveoflow

List of all members.

Public Member Functions

 polyoflow (bool doref, otflow_i *rz)
 constructor + open
virtual ~polyoflow ()
 destructor
virtual bool failed (void) const
 are we in a failed state?
virtual size_t write (const byte_t *_buf, size_t _size)
 write a raw block of data
virtual void write_bool (bool val)
virtual void write_char (char val)
virtual void write_short (short val)
virtual void write_int (int val)
virtual void write_size_t (size_t val)
virtual void write_int64_t (int64_t val)
virtual void write_long (long val)
virtual void write_float (float val)
virtual void write_double (double val)
virtual void write_string (const std::string &val)
virtual void write_object (const scopira::tool::object *o)
 saves the object to stream
void open (otflow_i *fi)
void close (void)
 closes the current file

Protected Types

typedef std::map< std::string,
int > 
typemap_t

Protected Attributes

count2_ptr< otflow_idm_file
int dm_next_typeid
typemap_t dm_typemap

Detailed Description

polymorphic output

a polymorphic flow implementation. this implementation does NOT handle morphic pointers. that is, it saves each object completly, with not regard for circular pointer relationships

Author:
Aleksander Demko

Member Function Documentation

void scopira::tool::polyoflow::open ( otflow_i fi)

opens a flow on the given file stream. the flow will "own" the file stream

Parameters:
fithe file to operate on
Author:
Aleksander Demko
virtual void scopira::tool::polyoflow::write_bool ( bool  ) [virtual]

Writes a bool

Author:
Aleksander Demko

Implements scopira::tool::otflow_i.

virtual void scopira::tool::polyoflow::write_char ( char  ) [virtual]

Writes a char

Author:
Aleksander Demko

Implements scopira::tool::otflow_i.

virtual void scopira::tool::polyoflow::write_float ( float  ) [virtual]

Write a float

Author:
Aleksander Demko

Implements scopira::tool::otflow_i.

virtual void scopira::tool::polyoflow::write_int ( int  ) [virtual]

Writes an int

Author:
Aleksander Demko

Implements scopira::tool::otflow_i.

virtual void scopira::tool::polyoflow::write_int64_t ( int64_t  ) [virtual]

Writes a int64_t

Author:
Aleksander Demko

Implements scopira::tool::otflow_i.

virtual void scopira::tool::polyoflow::write_long ( long  ) [virtual]

Writes an long

Author:
Aleksander Demko

Implements scopira::tool::otflow_i.

virtual void scopira::tool::polyoflow::write_short ( short  ) [virtual]

Writes a short

Author:
Aleksander Demko

Implements scopira::tool::otflow_i.

virtual void scopira::tool::polyoflow::write_size_t ( size_t  ) [virtual]

Writes a size_t

Author:
Aleksander Demko

Implements scopira::tool::otflow_i.

virtual void scopira::tool::polyoflow::write_string ( const std::string &  ) [virtual]

Writes a STL string

Author:
Aleksander Demko

Implements scopira::tool::otflow_i.


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