00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00014 #ifndef __FIBER_XMLBUNDLE_HPP
00015 #define __FIBER_XMLBUNDLE_HPP "Created 27.02.2001 21:42:27 by werner"
00016
00017 #include "FBXMLAPI.h"
00018 #include "init.hpp"
00019 #include <bundle/Bundle.hpp>
00020 #include <memcore/Persistencer.hpp>
00021
00022 #include "XMLSaver.hpp"
00023 #include "XMLMemArray.hpp"
00024
00025 namespace Fiber
00026 {
00027 using std::list;
00028 using std::string;
00029 using namespace MemCore;
00030
00031 template <>
00032 class XMLBUNDLE_API XMLSaver<Bundle> : public Interface<XML>
00033 {
00034 public:
00035 void save(const Bundle&B, const char*filename);
00036
00037 bool apply_const(const Intercube&I, const RefPtr<InterfaceIterationParameter>&);
00038 };
00039
00040 template <>
00041 class XMLBUNDLE_API XMLSaverCreator<Bundle> : public SaveInterfaceCreator<Bundle>
00042 {
00043 override bool addSaveInterface(Bundle*B)
00044 {
00045 B->addInterface( new XMLSaver<Bundle>() );
00046 return false;
00047 }
00048 };
00049
00050 template <>
00051 class XMLBUNDLE_API XMLLoader<Bundle> : public Loader<Bundle>
00052 {
00053 override RefPtr<Bundle> load(const RefPtr<LoaderParameters>&LP, const RefPtr<Bundle>&)
00054 {
00055 return NullPtr();
00056 }
00057 };
00058
00059 }
00060
00061 #endif
00062