FBfs.hpp

00001 
00002 //
00003 // $Id: FBfs.hpp,v 1.2 2005/01/28 12:45:21 werner Exp $
00004 //
00005 // $Log: FBfs.hpp,v $
00006 // Revision 1.2  2005/01/28 12:45:21  werner
00007 // Doing stuff little less verbose.
00008 //
00009 // Revision 1.1  2004/09/10 14:56:58  werner
00010 // Preliminiary file system support.
00011 //
00012 //
00014 #ifndef __FIBER_FSBUNDLE_HPP
00015 #define __FIBER_FSBUNDLE_HPP "Created 27.02.2001 21:42:27 by werner"
00016 
00017 #include "fsAPI.h"
00018 #include "init.hpp"
00019 #include <bundle/Bundle.hpp>
00020 #include <memcore/Persistencer.hpp>
00021 
00022 #include "FSsaver.hpp"
00023 #include "FSMemArray.hpp"
00024 
00025 namespace Fiber
00026 {
00027         using std::list;
00028         using std::string;
00029         using namespace MemCore;
00030 
00031 template <>
00032 class   FSBUNDLE_API FSSaver<Bundle> : public Interface<FS>
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   FSBUNDLE_API FSSaverCreator<Bundle> : public SaveInterfaceCreator<Bundle>
00042 {
00043         override bool addSaveInterface(Bundle*B)
00044         {
00045                 B->addInterface( new FSSaver<Bundle>() );
00046                 return false;
00047         }
00048 };
00049 
00050 template <>
00051 class   FSBUNDLE_API FSLoader<Bundle> : public Loader<Bundle>
00052 {
00053         override RefPtr<Bundle> load(const RefPtr<LoaderParameters>&LP)
00054         {
00055                 return NullPtr();
00056         }
00057 };
00058 
00059 } /* namespace Fiber */ 
00060 
00061 #endif /* __FIBER_FSBUNDLE_HPP */
00062