Main Page   Namespace List   Class Hierarchy   Compound List   File List   Namespace Members   Compound Members   File Members  

StreamPropertyWriter.h

Go to the documentation of this file.
00001 
00039 #ifndef _AMIRE_PROPERTY_STREAM_PROPERTY_WRITER_H
00040 #define _AMIRE_PROPERTY_STREAM_PROPERTY_WRITER_H
00041 
00042 #include <iostream>
00043 #include <string>
00044 #include <hash_set>
00045 
00046 #include <amire/common/Utils.h>
00047 #include <amire/property/PropertyWriter.h>
00048 
00049 namespace amire {
00050   namespace property {
00051     class StreamPropertyWriter : public PropertyWriter {
00052     protected:
00053       std::ostream *out;
00054 
00055     private:
00056       STD_HASH_SET(std::string, amire::common::HashCompareString) writtenStructPropertyTypes;
00057 
00058     public:
00059       StreamPropertyWriter(std::ostream *out);
00060 
00061       virtual ~StreamPropertyWriter();
00062 
00063       virtual void write(const PersistentProperty *property);
00064 
00065     private:
00066       void writeStructPropertyType(const StructPropertyType *type);
00067       void writeStructProperty(const PersistentProperty *value);
00068       void writeStructVectorProperty(const PersistentProperty *value);
00069       void writeVectorProperty(const PersistentProperty *value);
00070     };
00071   }
00072 }
00073 
00074 #endif
00075 
00076 

Generated on Tue May 20 17:23:53 2003 for AMIRE-Framework by doxygen1.3