00001 #ifndef __FIBER_HDF5VLENCREATOR_HPP
00002 #define __FIBER_HDF5VLENCREATOR_HPP
00003
00004 #include <F5/F5R.h>
00005 #include <F5/F5private.h>
00006 #include <field/MemArray.hpp>
00007 #include <field/CreativeArray.hpp>
00008 #include "TypeRegistry.hpp"
00009
00010 #include <memcore/Loader.hpp>
00011
00012 namespace Fiber
00013 {
00014
00019 class HDF5VLenCreator : public Creator<MemBase>
00020 {
00021 protected:
00022 hid_t dataset_id;
00023
00024 public:
00029 string path_info;
00030
00031 RefPtr<LoaderProgress> LP;
00032
00036 HDF5VLenCreator(const RefPtr<SizeInterface>&SI, const RefPtr<LoaderProgress>&BLP, hid_t field_id,
00037 const WeakPtr<Cache>&theCache = MemCore::Cache::MemCache() );
00038
00039
00040 static HDF5VLenCreator*New(const RefPtr<SizeInterface>&SI, const RefPtr<LoaderProgress>&BLP, hid_t base_type_id,
00041 hid_t field_id,
00042 const WeakPtr<Cache>&theCache = MemCore::Cache::MemCache() );
00043
00044 ~HDF5VLenCreator();
00045 };
00046
00047
00048 }
00049
00050
00051 #endif // __FIBER_HDF5VLENCREATOR_HPP
00052