BaseSpace.hpp

00001 #ifndef __FIBER_GRID_DOMAIN_HPP
00002 #define __FIBER_GRID_DOMAIN_HPP "Created 27.02.2001 21:42:27 by werner"
00003 
00004 #include "GridAPI.h"
00005 #include <memcore/TypeInfo.hpp>
00006 #include <memcore/RefPtr.hpp>
00007 #include <memcore/Interface.hpp>
00008 #include <set>
00009 
00010 namespace Fiber
00011 {
00012 
00016 class   GRID_API BaseSpaceDependency : public MemCore::ReferenceBase<BaseSpaceDependency>
00017 {
00018 public:
00020         BaseSpaceDependency(); 
00021 
00023         virtual ~BaseSpaceDependency();
00024 };
00025 
00026 
00032 class   GRID_API BaseSpace : public MemCore::ReferenceBase<BaseSpace> , public MemCore::Intercube
00033 {
00034         typedef std::set<MemCore::WeakPtr<BaseSpaceDependency> > BaseSpaceDependencyList_t; 
00035 
00036         BaseSpaceDependencyList_t BaseSpaceDependencyList;
00037 public:
00038 #ifdef _MSC_VER
00039 #pragma warning( disable : 4355 )
00040 #endif 
00041 
00048         void addDependency(const MemCore::WeakPtr<BaseSpaceDependency>&); 
00049 
00051         BaseSpace();
00052 
00054         virtual ~BaseSpace();
00055 
00057         virtual int Dims() const = 0;
00058 };
00059 
00060 } /* namespace Fiber */ 
00061 
00062 #endif /* __FIBER_GRID_DOMAIN_HPP */