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