00001 #include "AIDA_MemoryStoreFactory.h" 00002 #include "AIDA_MemoryStore.h" 00003 #include "AIDA_Dev/IDevAnalysisFactory.h" 00004 00005 static Anaphe::AIDA_MemoryStore::AIDA_MemoryStoreFactory factory; 00006 00007 namespace Anaphe { 00008 namespace AIDA_MemoryStore { 00009 class Initializer { 00010 public: 00011 Initializer() { 00012 AIDA::Dev::IDevAnalysisFactory* af = dynamic_cast<AIDA::Dev::IDevAnalysisFactory*>( AIDA_createAnalysisFactory() ); 00013 if ( af ) { 00014 af->registerStoreFactory( static_cast< AIDA::Dev::IStoreFactory* >( &factory ), "Memory" ); 00015 delete af; 00016 } 00017 } 00018 ~Initializer() {} 00019 }; 00020 } 00021 } 00022 00023 static Anaphe::AIDA_MemoryStore::Initializer myInitializer; 00024 00025 00026 Anaphe::AIDA_MemoryStore::AIDA_MemoryStoreFactory::AIDA_MemoryStoreFactory() 00027 {} 00028 00029 Anaphe::AIDA_MemoryStore::AIDA_MemoryStoreFactory::~AIDA_MemoryStoreFactory() 00030 {} 00031 00032 00033 AIDA::Dev::IStore* 00034 Anaphe::AIDA_MemoryStore::AIDA_MemoryStoreFactory::createStore( const std::string & storeName, 00035 bool, 00036 bool, 00037 const std::string & ) 00038 { 00039 return new Anaphe::AIDA_MemoryStore::AIDA_StoreMemory( storeName ); 00040 } 00041 00042 00043 bool 00044 Anaphe::AIDA_MemoryStore::AIDA_MemoryStoreFactory::destroyStore( AIDA::Dev::IStore* store ) 00045 { 00046 if ( store ) { 00047 delete store; 00048 return true; 00049 } 00050 else { 00051 return false; 00052 } 00053 } 00054