Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016 #ifndef ZORBA_SERIALIZER_API_H
00017 #define ZORBA_SERIALIZER_API_H
00018
00019 #include <zorba/options.h>
00020 #include <zorba/config.h>
00021 #include <zorba/api_shared_types.h>
00022 #include <zorba/item.h>
00023
00024 namespace zorba {
00025
00026 class ZORBA_DLL_PUBLIC Serializer : public SmartObject
00027 {
00028 public:
00029
00030 virtual ~Serializer() {}
00031
00032 virtual void
00033 serialize(
00034 ItemSequence *object,
00035 std::ostream& stream) const = 0;
00036
00037 virtual int
00038 getSerializationMethod() const = 0;
00039
00040 static Serializer_t
00041 createSerializer(const Zorba_SerializerOptions_t& options);
00042
00043 static Serializer_t
00044 createSerializer(ItemSequence* options);
00045
00046 };
00047
00048 }
00049
00050 #endif
00051