00001
00002 #ifndef ANAPHE_MEMORYFUNCTIONCOPIER
00003 #define ANAPHE_MEMORYFUNCTIONCOPIER 1
00004
00005
00006 namespace AIDA {
00007 class IManagedObject;
00008
00009 namespace Dev {
00010 class IDevAnalysisFactory;
00011 class IDevManagedObject;
00012 }
00013 }
00014
00015 namespace Anaphe {
00016 namespace AIDA_MemoryStore {
00017
00019
00020 class MemoryFunctionCopier
00021 {
00022 public:
00023 MemoryFunctionCopier( AIDA::Dev::IDevAnalysisFactory& af );
00024 ~MemoryFunctionCopier(){};
00025 AIDA::Dev::IDevManagedObject* createCopy( const AIDA::IManagedObject& dataObject );
00026 private:
00027 AIDA::Dev::IDevAnalysisFactory& m_af;
00028 };
00029
00030 }
00031 }
00032
00033 #endif