Main Page   Class Hierarchy   Compound List   File List   Compound Members   Related Pages  

StateIn Class Reference

Restores objects that derive from SavableState. More...

#include <statein.h>

Inheritance diagram for StateIn

Inheritance graph
[legend]
Collaboration diagram for StateIn:

Collaboration graph
[legend]
List of all members.

Public Methods

 StateIn ()
virtual ~StateIn ()
virtual void get_header ()
 Read in the header information. More...

virtual int version (const ClassDesc *)
 Returns the version of the ClassDesc in the persistent object or -1 if info on the ClassDesc doesn't exist.

virtual int getstring (char *&)
 This restores strings saved with StateOut::putstring.

virtual int get (char &r, const char *keyword=0)
 These restore data saved with StateOut's put. members.

virtual int get (unsigned int &r, const char *keyword=0)
virtual int get (int &r, const char *keyword=0)
virtual int get (float &r, const char *keyword=0)
virtual int get (double &r, const char *keyword=0)
virtual int get (char *&)
 These restore data saved with StateOut's put. More...

virtual int get (unsigned int *&)
virtual int get (int *&)
virtual int get (float *&)
virtual int get (double *&)
virtual int get_array_char (char *p, int size)
 These restore data saved with StateOut's put. More...

virtual int get_array_uint (unsigned int *p, int size)
virtual int get_array_int (int *p, int size)
virtual int get_array_float (float *p, int size)
virtual int get_array_double (double *p, int size)
int node_to_node () const
 True if this is a node to node save/restore. More...

virtual int use_directory ()
 Returns true of this object uses a directory.

virtual int tell ()
 Return the current position in the file.

virtual void seek (int)
 Set the current position in the file. More...

virtual int seekable ()
 Return non-zero if seek does anything sensible. More...

int has_directory () const
virtual void list_objects (std::ostream &=ExEnv::out())
 List all the objects to the stream. More...

void set_override (const Ref< KeyVal > &kv)
 Give this StateIn a KeyVal object that is used to override values.

const Ref<KeyVal>& override () const
 Return the KeyVal used to override values.


Protected Methods

virtual int get_array_void (void *,int)
int push_key (const char *key)
void pop_key (int n)
const char* key ()
void get_directory ()
int directory_location () const
void find_and_get_directory ()
virtual int getobject (Ref< SavableState > &)
 This is used to restore an object. More...

virtual int dir_getobject (Ref< SavableState > &, const char *name)
 This restores objects that are listed in the directory.

virtual void haveobject (int, const Ref< SavableState > &)
 When storage has been allocated during object restoration, this routine is called with the object reference number and the pointer to the new storage so getpointer can find the data if it is referenced again.

virtual void nextobject (int)
 A call to nextobject followed by havepointer(int) is equiv to havepointer(int,void**);.

virtual void haveobject (const Ref< SavableState > &)
void have_classdesc ()
int need_classdesc ()
virtual int get (const ClassDesc **)
 This restores ClassDesc's. More...


Protected Attributes

Ref<KeyValoverride_
TranslateDataIntranslate_
AVLMap<int,StateInData> ps_
int expected_object_num_
AVLMap<ClassDescP,int> classidmap_
AVLMap<int,StateClassData> classdatamap_
int nextclassid_
int node_to_node_
int version_
int date_
char userid_ [9]
char format_

Friends

class  SavableState
class  TranslateDataIn

Detailed Description

Restores objects that derive from SavableState.


Member Function Documentation

int StateIn::get ( char *& ) [virtual]
 

These restore data saved with StateOut's put.

members. The data is allocated by StateIn.

Reimplemented in MsgStateRecv, and StateInText.

int StateIn::get ( const ClassDesc ** ) [protected, virtual]
 

This restores ClassDesc's.

It will set the pointer to the address of the static ClassDesc for the class which has the same name as the class that had the ClassDesc that was saved by put(const ClassDesc*).

Reimplemented in MsgStateRecv, and StateInText.

int StateIn::get_array_char ( char * p,
int size ) [virtual]
 

These restore data saved with StateOut's put.

members. The data must be preallocated by the user.

Reimplemented in StateInText.

void StateIn::get_header ( ) [virtual]
 

Read in the header information.

Changes the translation scheme if necessary.

int StateIn::getobject ( Ref< SavableState > & ) [protected, virtual]
 

This is used to restore an object.

It is called with the reference to the reference being restored. If the data being restored has previously been restored, then the pointer being restored is set to a reference to the previously restored object.

Reimplemented in StateInText.

void StateIn::list_objects ( std::ostream & = ExEnv::out() ) [virtual]
 

List all the objects to the stream.

Only StateIn specializations with directories can list objects.

int StateIn::node_to_node ( ) const [inline]
 

True if this is a node to node save/restore.

This is for classes that try to avoid saving databases to files that can otherwise be read in, but want to avoid reading the database from disk on all nodes.

void StateIn::seek ( int loc ) [virtual]
 

Set the current position in the file.

The default implementation does nothing.

Reimplemented in BcastStateInBin, and StateInBin.

int StateIn::seekable ( ) [virtual]
 

Return non-zero if seek does anything sensible.

The default implementation returns 0.

Reimplemented in BcastStateInBin, and StateInBin.


The documentation for this class was generated from the following file:
Generated at Thu Oct 4 18:09:57 2001 for MPQC 2.0.0 using the documentation package Doxygen 1.2.5.