RDCode: CatalogParams.h Source File

# CatalogParams.h

Go to the documentation of this file.

    00001 //
    00002 //  Copyright (C) 2003-2006 Rational Discovery LLC
    00003 //
    00004 //  @@ All Rights Reserved @@
    00005 //
    00006 #ifndef __RD_CATALOGPARAMS_H__
    00007 #define __RD_CATALOGPARAMS_H__
    00008
    00009 #include <string>
    00010
    00011 namespace RDCatalog {
    00012   //! abstract base class for the container used to create a catalog
    00013   class CatalogParams {
    00014   public:
    00015     virtual ~CatalogParams() = 0;
    00016
    00017     //! returns our type string
    00018     std::string getTypeStr() const { return d_typeStr; };
    00019
    00020     //! sets our type string
    00021     void setTypeStr(const std::string &typeStr) { d_typeStr=typeStr; };
    00022
    00023     //! serializes (pickles) to a stream
    00024     virtual void toStream(std::ostream &) const = 0;
    00025     //! returns a string with a serialized (pickled) representation
    00026     virtual std::string Serialize() const = 0;
    00027     //! initializes from a stream pickle
    00028     virtual void initFromStream(std::istream &ss) = 0;
    00029     //! initializes from a string pickle
    00030     virtual void initFromString(const std::string &text) = 0;
    00031
    00032   protected:
    00033     std::string d_typeStr; //!< our type string
    00034   };
    00035 }
    00036
    00037 #endif