Provided by: libsc-doc_2.3.1-21_all bug

NAME

       sc::StateIn - Restores objects that derive from SavableState.

SYNOPSIS

       #include <statein.h>

       Inherits sc::DescribedClass.

       Inherited by sc::MsgStateBufRecv, and sc::StateInFile.

   Public Member Functions
       virtual void get_header ()
           Read in the header information.
       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 (std::string &)
           This restores a std::string object.
       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 (bool &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.
       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.
       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)
       template<class T > int get (typename std::vector< T > &v)
           Read an STL vector of data.
       int node_to_node () const
           True if this is a node to node save/restore.
       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.
       virtual int seekable ()
           Return non-zero if seek does anything sensible.
       int has_directory () const
       virtual void list_objects (std::ostream &=ExEnv::out0())
           List all the objects to the stream.
       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 Member Functions
       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.
       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.

   Protected Attributes
       Ref< KeyVal > override_
       TranslateDataIn * translate_
       std::map< int, StateInData > ps_
       int expected_object_num_
       std::map< ClassDescP, int > classidmap_
       std::map< 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

   virtual int sc::StateIn::get (char *&) [virtual]
       These restore data saved with StateOut's put. members. The data is allocated by StateIn.

       Reimplemented in sc::MsgStateRecv, and sc::StateInText.

   virtual int sc::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 sc::MsgStateRecv, and sc::StateInText.

       Referenced by get().

   virtual int sc::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 sc::StateInText.

   virtual void sc::StateIn::get_header () [virtual]
       Read in the header information. Changes the translation scheme if necessary.

   virtual int sc::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 sc::StateInText.

   virtual void sc::StateIn::list_objects (std::ostream & = ExEnv::out0()) [virtual]
       List all the objects to the stream. Only StateIn specializations with directories can list
       objects.

   int sc::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.

   virtual void sc::StateIn::seek (int) [virtual]
       Set the current position in the file. The default implementation does nothing.

       Reimplemented in sc::BcastStateInBin, and sc::StateInBin.

   virtual int sc::StateIn::seekable () [virtual]
       Return non-zero if seek does anything sensible. The default implementation returns 0.

       Reimplemented in sc::BcastStateInBin, and sc::StateInBin.

Author

       Generated automatically by Doxygen for MPQC from the source code.